悬浮效果 先看个效果 效果 这是一个City列表,每个City都有所属的Province,需要在滑动的时候,将对应的Province悬浮在顶部。...效果 (详情代码见底部链接) 打造悬浮效果 这是一个城市列表,根据省份分组,相同的城市只会显示一个省份。滚动城市列表时,省份会悬浮在顶部。...到目前为止,一个带有悬浮功能的列表就实现了。...com.gavin.com.library:stickyDecoration:x.x.x' } 链接 支持 LinearLayoutManager GridLayoutManager 点击事件 分割线 详细用法级源码请看Github 参考 Android...-使用RecyclerView的ItemDecoration 实现炫酷的 吸顶效果 RecycleView的学习(一篇不错的博客,没有投稿,所以看得人不多) Android RecyclerView
mWindowManager.removeView(mFloatingView); } } Mainfest.xml需要添加相关权限以及注册Service android...:name="android.permission.SYSTEM_ALERT_WINDOW"/> android:name="cn.android.example.knowledge.service.FloatingViewService..." android:enabled="true"/> 这样,就可以把之前的录制视频的代码,与FloatingView相结合,这样录制起来就方便一点了。
Toast.makeText(sInstance, “tishi”, Toast.LENGTH_SHORT).show();
另一个是360卫士的悬浮球,实现此功能的方式比较多,这里以视频通话悬浮窗中的需求为例。...1.悬浮窗可以显示在其他应用或launchers之上,这个肯定需要悬浮窗权限,而悬浮窗权限属于特殊权限,所以只能通过引导用户去打开无法像危险权限那样直接申请。...2.通话页面隐藏时悬浮窗显示,通话页面显示时悬浮窗隐藏,可以看出悬浮窗和Activity的生命周期相关联,所以悬浮窗的Service和通话页面的Activity是通过bind去绑定的。...判断是否有悬浮窗权限 点击左上角图标时,我们要先判断当前app是否有悬浮窗权限,首先我们在配置文件中添加,悬浮窗的权限。...android:name="android.permission.SYSTEM_ALERT_WINDOW" /> (很多文章标题都是悬浮窗如何绕过权限,什么设置类型为TOAST
> android="http://schemas.android.com/apk/res/android" android:layout_width="...wrap_content" android:layout_height="wrap_content" android:background="@drawable/floating_bar_outside..."> <TextView android:id="@+id/touch_view" android:layout_width="200dp" android...:layout_height="5dp" android:background="@color/colorAccent" android:clickable="true"...等到悬浮窗完全展示的时候,点击空白的地方,悬浮窗又需要从当前的位置回滚到初始的位置,其原理和拖出来的原理是一样的。
常见的对话框主要分为消息提示对话框、确认对话框、列表对话框、单选对话框、多选对话框和自定义对话框。 对话框可以阻碍当前的UI线程,常用于退出确认等方面。 ...这一部分,主要使用的是设计模式中的建造者模式,将东西提供给builder,然后会组装成一个完整的对话框。...②确认对话框 public boolean onItemLongClick(AdapterView对话框 public boolean onItemLongClick(AdapterView对话框 1.定义一个弹出框的格式(用xml定义) 2.反射出对话框 public class Main2Activity extends AppCompatActivity {
FloatingX ,一个强大的免权限悬浮窗组件,支持全局,以及局部悬浮窗。...背景 在前几个月的业务开发中,我们 app 需要对悬浮窗进行更改,常见的悬浮窗实现方式分为两种: 前者是获取权限后,利用 WindowManager 实现 后者是基于 DecorView 实现的插入悬浮窗...于是我希望有这样一个组件,它必须具备以下基本要求: 无感插入 可拖动 良好的分层设计 这是最开始的功能,但随着封装过程,以及对比知乎等其他悬浮窗,我发现可能可以让这个东西更有意思,而不只是一个工具类。...插入到 DecorView 可以最大程度控制悬浮窗的自由度,即悬浮窗可以真正意义上[全屏]拖动。...感谢 基础 悬浮窗View 源自 EnFloatingView 的 FloatingMagnetView 实现方式,并在其基础上增加了一些改进。
目的 我们在很多android应用中可能会看到悬浮窗按钮,最多的应该就是360了,通过代码我们也可以实现这个功能 先上干货 Demo做完的效果演示视频: ?...(context); } }); } } ---- MyWindowManager 这个类是我们管理大小悬浮框的事件类,包括关闭小悬浮窗,展开大悬浮窗等...,则创建悬浮窗。...}); } } } 我们在设置WindowManager.LayoutParams里面的type参数时需要注意的问题 //设置类型 android8.0...bigWindowParams.type = WindowManager.Layout Params.TYPE_SYSTEM_ALERT; } android8.0
前言 前几天我刚写了一篇《Android实现可移动的悬浮窗》的文章,需要在AndroidManifest.xml里的加上权限申请 ?...在度娘的帮助下,找到了下面这篇文章《Android无需权限显示悬浮窗, 兼谈逆向分析app》 由于无法超链接,这里贴上地址:https://www.jianshu.com/p/167fd5f47d5c...android4.3及以下的版本中,如果用TYPE_TOAST悬浮窗正常显示, 但不能接受触摸事件....---- 回到我们上次悬浮窗的代码 ? 我们把原来红框里面兼容android8,0版本的判断去掉,改为下面绿框里面的当apiandroid的悬浮窗效果了。 ---- -END-
1.改变对话框大小 LayoutParams lp = dialog.getWindow().getAttributes(); lp.width = XXX; lp.height...= xxx;想咋改就咋改 2.取消对话框标题 首先在 values/Style.xml文件中加入以下代码(如果没有该文件就创建一个XML名为Style.xml) android:windowFrame">@null android:windowIsFloating">true ...android:windowIsTranslucent">false android:windowNoTitle">true...:theme="@style/myDialogTheme" 这个名就是上面的样式名称 android:name=".LoginDialog" android:theme="@style
使用方法: 如果只是普通进度对话框 直接调用ProgressDialog静态方法 show() 即可 创建ProgressDialog 调用方法进行具体设置 setIndeterminate(false...static int MAX_PROGRESS = 100; //虚拟 填充长度为100的数组 private int[] data = new int[50]; //记录进度对话框完成百分比...progressDialog01.setTitle("任务正在执行中"); //设置对话框执行内容 progressDialog01.setMessage...("任务正在执行中敬请等待~~~"); //设置对话框“取消” 按钮关闭 progressDialog01.setCancelable(true); //...("任务正在执行中敬请等待~~~"); //设置对话框“取消” 按钮关闭 progressDialog02.setCancelable(false); /
背景 ---- 游戏内的悬浮窗通常情况下只出现在游戏内,用做切换账号、客服中心等功能的快速入口。...本文将介绍几种实现方案,以及我们踩过的坑 方案一:应用外悬浮窗+栈顶权限/生命周期回调 ---- 通常实现悬浮窗,首先考虑到的会是要使用悬浮窗权限,用 WindowManager 在设备界面上 addView...实现( UI 层级较高,应用外显示) 1、弹出悬浮窗需要用到悬浮窗权限 悬浮窗权限--> android:name="android.permission.SYSTEM_ALERT_WINDOW"/> 2、判断悬浮窗游戏内外显示...方式一:使用栈顶权限获取当前 //需要声明权限android:name="android.permission.GET_TASKS" /> //判断当前是否在后台private
序言 前些日子跟朋友聊天,朋友Z果粉,前些天更新了微信,说微信出了个好方便的功能啊,我问是啥功能啊,看看我大Android有没有,他说现在阅读公众号文章如果有人给你发微信你可以把这篇文章当作悬浮窗悬浮起来...,方便你聊完天不用找继续阅读,听完是不是觉得这叫啥啊,我大Android微信版不是早就有这个功能了吗,我看文章的时候看到过有这个悬浮按钮,但是我一直没有使用过,试了一下还是挺方便的,就想着自己实现一下这个功能...实现 1、权限 首先我们要考虑的一个问题就是权限问题,因为要适配Android 7.0 8.0,添加悬浮窗是需要申请权限的,这里参考了Android 悬浮窗权限各机型各系统适配大全这篇文章,适配的比较全...这里需要注意的是,为了适配Android 8.0,Window的类型需要配置一下: 1if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { 2...//Android 8.0 3 mLayoutParams.type = WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY; 4} else
这里使用的是:com.getbase.floatingactionbutton.FloatingActionsMenu 先说下它的配置:在app/build.gradle 添加以下代码依赖: //圆形悬浮按钮...implementation 'com.android.support:design:28.0.0' implementation 'com.getbase:floatingactionbutton...title 字体以及颜色的设置: FloatingActionButton默认无法显示文字的情况,所以这里需要对其配置样式; 在res/value/style中添加: android...:background">@drawable/fab_label_background //文字背景的样式 android:textColor">@...中添加自定义消灭了文件用于配置文字样式: 完成这些步骤之后只需在布局文件中调用即可: 这里是我的布局文件: // 设置方法如代码第六行所示 FloatingActionButton基本使用: /* 设置三个悬浮按钮的监听事件
前言 Android项目经常需要使用对话框来进行交互,本文将介绍一个简单自定义的Dialog案例 效果图 代码部分 自定义Dialog布局 android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com...android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor...> android="http://schemas.android.com/apk/res/android" android:shape="rectangle">...super.onCreate(savedInstanceState); setContentView(R.layout.activity_my_dialog); //如果对话框宽度异常
简介: PopupWindow 刻船舰类似对话框风格的窗口 效果: 使用方法: 使用PopupWindow 创建对话框风格的串口秩序如下两步即可: 1.
3 6.0出现的悬浮窗权限 为什么从6.0说起?...在Android6.0之后,使用悬浮窗功能需要申请开启悬浮窗权限,在API23以下版本编译,悬浮窗权限关闭的,但是没有权限限制,在大于23版本编译,这个权限默认是关闭的,需要获取权限。...在6.0之前就有的权限,默认在清单文件中注册: android:name="android.permission.SYSTEM_ALERT_WINDOW"/> 此权限在...6.0之后判断是否有悬浮窗权限,没有则申请权限 android:name="android.permission.SYSTEM_OVERLAY_WINDOW"/>...1.Android8.0 修订记录中的内容: ?
Android 各版本查询和开启悬浮窗权限 如果你是从事Android开发的程序员,那么你肯定对于权限这个词不会陌生,Android的权限分为一般权限和危险权限,一般权限(只需在AndroidManifest.xml...悬浮窗权限 悬浮窗权限不同于其他的权限如相机、相册、文件读写权限等,这些权限,动态申请后,用户只要的应用里面弹出来的提示框里面开启就可以了,并不会离开应用,而开启悬浮窗权限用户则需要进入到应用列表或者是应用详情里面开启悬浮窗权限...业务逻辑: APP默认是没有开启这个悬浮窗权限的,所以需要申请,而申请之后又要先判断有没有开启这个权限,这个判断是很重要的,你总不能每次都让用户去应用列表看这个权限有没有开启吧。...判断也是要分Android的版本的,如Android6.0、Android6.0至Android8.0、Android8.0以上,更低的版本就不考虑了,(你不要和我说你现在还用着Android4.4或者..." /> 权限检查 //判断是否开启悬浮窗权限 context可以用你的Activity.或者tiis public static boolean checkFloatPermission
View1刚划出顶部的时机就是: 当滑动时 firstVisibleItem>=要悬浮的 item的position时 让View2显示 ,否则隐藏。...> 2 android="http://schemas.android.com/apk/res/android" 3 android:orientation...LinearLayout> 要停留在顶部的View布局:(这里是要停留在顶部的View,这里addHeadView到ListView顶部,跟随者ListView滑动到顶部消失,这时满足firstVisibleItem>=要悬浮的...> android="http://schemas.android.com/apk/res/android" android:orientation="horizontal...添加头部 20 21 lv.addHeaderView(View.inflate(this, R.layout.stick_action, null));//ListView条目中的悬浮部分
//悬浮窗口 private LinearLayout mFloatLayout;...实现操作除浮动窗口外的其他可见窗口的操作) wmParams.flags = LayoutParams.FLAG_NOT_FOCUSABLE; //调整悬浮窗显示的停靠位置为左侧置顶...getApplicationContext(), 20); wmParams.y = Dp2Px(getApplicationContext(), 80); //设置悬浮窗口长宽数据...wmParams.height = WindowManager.LayoutParams.WRAP_CONTENT; /*// 设置悬浮窗口长宽数据...WritePostActivity.class)); } }); } 在上面我的菜单用的是 radioGruop控件,只需要在自己需要的界面中把悬浮布局弄出来就行
领取专属 10元无门槛券
手把手带您无忧上云