首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

android实现自由移动、监听点击事件的悬浮窗

首先我们先聊权限,悬浮窗需要在manifest中声明一个权限: <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW...在Andriod中,所有的界面元素都要通过windowmanger来实现,像Activity、Fragment等等这些也是在其上实现。因此,我们的悬浮窗自然要通过这个实现。...WindowManager.LayoutParams.TYPE_PHONE; // FLAG_NOT_TOUCH_MODAL不阻塞事件传递到后面的窗口 // FLAG_NOT_FOCUSABLE 悬浮窗口较小时,后面的应用图标由不可长按变为长按...mTouchStartX += (event.getRawX() - lp.x); mTouchStartY += (event.getRawY() - lp.y); } else { //根据上次手指离开的位置与此次点击的位置进行初始位置微调...MyWindowManager.getInstance(); myWindowManager.createNormalView(this.getApplicationContext()); } } 最后,附上demo项目的下载地址: android

2.5K10
您找到你想要的搜索结果了吗?
是的
没有找到

Android自定义左右滑动和点击的折线图

前言 前几天有小盆友让我写一个折线图,可以点击,可以左右滑动。...重写ontouchEven()方法,来处理点击和滑动 @Override public boolean onTouchEvent(MotionEvent event) { if (isScrolling...this.getParent().requestDisallowInterceptTouchEvent(false); recycleVelocityTracker(); break; } return true; } 点击的处理是计算当前点击的...X、Y坐标范围进行判断点击的是那个点 /** * 点击X轴坐标或者折线节点 * * @param event */ private void clickAction(MotionEvent event)...(2)点击的时候忘记添加回调,只有添加了回调在可以在activity或者fragment里面获取点击的内容;代码很简单,自行脑补。 以上就是本文的全部内容,希望对大家的学习有所帮助。

1.7K50

【Flutter 专题】65 图解基本 TextField 文本输入框 (二)

('images/ic_launcher.png'))); return TextField(decoration: InputDecoration(icon: Icon(Icons.android))...labelText 为文本框描述标签,为 String 类型,直接编辑内容即可;labelStyle 为标签样式属性;TextField 获取焦点之后描述标签上移; return TextField(decoration...isDense 是否为紧凑型文本框,true 为紧凑型文本框,图标等与输入框边距较小; return TextField(decoration: InputDecoration(icon: Icon(Icons.android...), isDense: false)); return TextField(decoration: InputDecoration(icon: Icon(Icons.android), isDense:...,更为灵活,但不能与 prefixText 同时使用;prefixStyle 为预填充组件样式; return TextField(decoration: InputDecoration( prefixIcon

4.5K41

flutter 输入框组件TextField的实现代码

TextField 顾名思义文本输入框,类似于iOS中的UITextField和Android中的EditText和Web中的TextInput。主要是为用户提供输入文本提供方便。...this.onChanged, //文字改变触发 this.onSubmitted, //文字提交触发(键盘按键) this.onEditingComplete, //当用户提交可编辑内容时调用...在逻辑上,每当我们点击下面的按钮都会判断用户名密码是否符合要求,并且使用控制器清空已经输入的用户名和密码。...labelTex的位置. suffixIcon: 输入框内侧右面的图标. icon : 输入框左侧添加个图标 在多个输入框内切换焦点 介绍一下onEditingComplete这个方法: 当用户提交可编辑内容时调用...当按下一个未完成操作(如“next”或“previous”)时,用户的内容被提交给[controller],但不会放弃焦点,因为开发人员可能希望立即将焦点转移到[onsubmit]中的另一个输入小部件。

4.7K11

写给初学者的Jetpack Compose教程,基础控件和布局

操作方法是,在Android Studio的主编辑界面点击右上角的Split选项,然后编译一下项目即可,如下图所示: 不过,我个人觉得这个快速预览功能并不算是非常好用,尤其是早期的时候还有很多的bug...为了演示一下这个功能,我们就让点击按钮时弹出一个Toast提示吧。...现在当点击一下Button,效果如下图所示: 3. TextField TextField对应的是View当中的EditText,也就是一个输入框,因此它也是一个非常常用的控件。...然后当有任何状态需要发生改变时,只需要像刷新网页一样,让界面上的元素刷新一遍,那么自然状态就能得到更新了。...既然这样的话,那么Column还有什么讲的呢?实际上,Column还有非常多定制的内容。 首先你会发现,目前Column中的所有控件都是居左对齐的,那么我们有没有办法让它们居中对齐呢?

1.5K20

【Flutter实战】文本组件及五大案例

0x00000000)), borderRadius: BorderRadius.all(Radius.circular(100))), ), ), ) controller是输入框文本编辑的控制器...continueAction:android 不支持,ios仅在ios9.0+显示"Continue"(中文:继续)。 join:Android和ios显示"Join"(中文:加入)。...大家可能发现了,Android上显示的按钮大部分是不确定的,比如next有的显示向右的箭头,有的显示前进,这是因为各大厂商对Android ROM定制引发的。...onChanged是当内容发生变化时回调,onSubmitted是点击回车或者点击软键盘上的完成回调,onTap点击输入框时回调,用法如下: TextField( onChanged: (value...TextSpan(text: '泡沫灭火器可用于带电灭火'), ]), ) “服务协议” 通常在登录页面的底部会出现登录即代表同意并阅读 《服务协议》,其中《服务协议》为蓝色且可点击

7.2K10

iOS中storyboard故事板使用Segue跳转界面、传值

引 在iOS的开发过程中,不可避免的要设计界面,在android中有xml设置界面和直接使用java代码设置界面控件两种方式,在之前的ios开发中也是类似的有xib文件设置界面及用代码直接设置控件两种方法...在右侧第四个部分中把size设成想要的即可: 现在我们来为视图添加控件,考虑到我们的需求,要能辨认当下在哪个界面,要可以在两个界面跳转,要可以设置和显示要传递的值,那么我们需要一个标题栏,一个按钮和一个用于编辑和显示的编辑框...要从Page2跳回到Page1, 不能像上面一样再拉一个Segue回到Page1的视图 ,这样在跳转的过程中,跳一次添加一个新视图,跳一次添加一个新视图,原来的视图都没有消去,会一直累加的,并不是 回到...使用Segue在界面间传值: 我们在两个视图中都添加了TextField编辑输入框,这样我们可以在Page1的页面中输入数据来传递到Page2显示,同样的可以在Page2中输入数据回到Page1显示。...[self.delegate passValue:self.textField.text]; } 这样Page2的部分就完成了,回到Page1的代码,编辑Page1的.h文件,引用Page2

1.4K20

Android MVVM框架搭建(一)ViewModel + LiveData + DataBinding

③ 实现登录 二、LiveData使用 ① 修改数据 ② 数据观察 三、DataBinding使用 ① 单向绑定 ② 双向绑定 四、源码 前言   MVVM框架出来已经有一段时间了,现在也有很多的项目运用了...{ dataBinding true } 然后点击AS右上角的Sync Now进行工程配置同步,而ViewModel不需要做什么就可以使用了。...依然是之前那个登录页面,不过需要修改一下MainViewModel中的变量,如下: ① 修改数据 public MutableLiveData account = new MutableLiveData...android:hint="账号" /> com.google.android.material.textfield.TextInputLayout> <com.google.android.material.textfield.TextInputLayout...我将会输入study、666,然后点击登录按钮,也会将输入框的数据显示在TextView上,这样是否会省去很多不必要的繁琐工作呢?

14.2K86

【Flutter 专题】08 小小优化【登录】页面

和尚刚开始在编辑内容块 content 时,以为涉及的 widget 元素不多,所占不会超过屏幕,所以根 widget 使用的是 body: new Container(),但是在点击文本框 TextField...调整方式很简单,将根 widget 调整为 body: new ListView(),Flutter 中的 ListView 不仅代表列表 (ListView/RecycleView),还可以代表一个滑动布局...优化二:文本框 TextField 中尾部添加【清空数据】图标 方式一:使用层布局 Stack,在输入文本框 TextField 上一层添加一个【清空数据】图标; new Padding( padding...: new TextField( controller: _pwdcontroller, decoration: new InputDecoration( hintText:...Tips: 对话框中 barrierDismissible: false, 属性,若为false,点击对话框周围,对话框不会关闭;若为true,点击对话框周围,对话框自动关闭。 ? ? ?

1.4K51

Android MVVM框架搭建(一)ViewModel + LiveData + DataBinding

③ 实现登录 二、LiveData使用 ① 修改数据 ② 数据观察 三、DataBinding使用 ① 单向绑定 ② 双向绑定 四、源码 前言   MVVM框架出来已经有一段时间了,现在也有很多的项目运用了...{ dataBinding true } 然后点击AS右上角的Sync Now进行工程配置同步,而ViewModel不需要做什么就可以使用了。...依然是之前那个登录页面,不过需要修改一下MainViewModel中的变量,如下: ① 修改数据 public MutableLiveData account = new MutableLiveData...android:hint="账号" /> com.google.android.material.textfield.TextInputLayout> <com.google.android.material.textfield.TextInputLayout...我将会输入study、666,然后点击登录按钮,也会将输入框的数据显示在TextView上,这样是否会省去很多不必要的繁琐工作呢?

2.2K32

【Java AWT 图形界面编程】Container 容器总结

AWT 是 抽象窗口工具集 , Abstract Window Toolkit , AWT 功能比较简单 , Swing 提供了更加丰富的界面组件库 ; 通过 AWT 创建按钮 , 并设置对应的按钮点击事件...组件类 常用 API : setLocation(int x, int y) : 设置 组件 在 屏幕中的位置 , 屏幕中默认的坐标体系 , 左上角为原点 , 向右为 x 轴 , 向下为 y 轴 , 与 Android...textField = new TextField("测试文本框"); // 创建 按钮 Button button = new Button("测试按钮");...按钮文本为 " 测试按钮 " , 但是在 窗口中显示时 , 显示的乱码 : 这是因为 Java 程序代码的编码方式是 UTF-8 格式的编码 , 而 Windows 系统使用的是 GBK 格式的编码 ; 点击...---- ScrollPane 滚动容器 无法在 屏幕中独立存在 , 必须 依赖于 Frame 窗口而存在 ; 如果要 显示 ScrollPane 滚动容器 , 需要 将其添加到 Frame 窗口中

82110

【Flutter 专题】27 易忽略的【小而巧】的技术点汇总 (四)

CachedNetworkImage 中有两个属性很重要: placeholder 用来在加载图片时的缓冲过程,可以是动态 loading 亦或者 Widget 等; errorWidget 用来网络图片加载异常时展现,自定义进行展示...TextInputAction 键盘底部按钮 和尚在使用 TextField 文本框时会对键盘进行操作,为了良好对用户体验。在键盘右下角会有不同的按钮样式。...此时需要考虑 TextInputAction 属性,自定义展示内容。Flutter 提供了13种状态,但需注意的是有些是区分 Android 和 iOS 的,使用时需加注意。 ?...与 Android 中对文本进行自定义 style 很相似。...key); 和尚尝试过程中发现 ExpansionTile 虽然很方便,效果也很好,但是也有一些局限性,如下: 默认右侧箭头图标是固定的,包括动画旋转角度等,不能直接调整,需要自定义; 点击扩展区域不会消失

1.4K41

Flutter 从 TextField 安全泄漏问题深入探索文本输入流程

Flutter 的 TextField 相信大家都很熟悉,作为输入控件 TextField 经常出现在需要登录的场景,例如在需要输入密码的 TextField 上配置 obscureText:...之后我们通过 TextField 的 controller 清空输入文本,销毁当前页面,跳转到空白页面下后,同时在 Flutter devTool 上主动点击 GC 清理数据,最后再回到终端执行 find...系统的键盘管理对象,例如通过它显示/隐藏键盘,或者配置一些键盘特性; ListenableEditingState:用于保存当前编辑状态,如文本内容、选择范围等等,因为 InputConnection...IME_ACTION_DONE 这些 Key 被触发是时,会直接通过 TextInputChannel 将 code 发送到 Dart ; sendKeyEvent : 当某些特殊按键输入时会被回调,例如点击退格键时...如果针对 TextField 的 CWE-316 你还有什么想法,欢迎留言讨论交流~

1.4K30
领券