其他程序中禁止或者自动下拉状态栏
来源:互联网 发布:网络水军联系方式 编辑:程序博客网 时间:2024/04/28 04:30
4.3android源码
需求一:在其他程序中通过触发使状态栏自动下拉
解决:在触发事件中
mStatusBarManager = (StatusBarManager)this.getSystemService(Context.STATUS_BAR_SERVICE);
mStatusBarManager.expandNotificationsPanel();
解析:
mStatusBarManager.expandNotificationsPanel()方法最终会调用CommandQueue.Callbacks接口的animateExpandNotificationsPanel()在PhoneStatusBar中实现通知栏自动下拉。
Context.STATUS_BAR_SERVICE =“statusbar”;
需求二:在其他程序中通过触发禁止状态栏下拉功能
int flags = StatusBarManager.DISABLE_NONE;
mStatusBarManager = (StatusBarManager)this.getSystemService(Context.STATUS_BAR_SERVICE);
flags |= StatusBarManager.DISABLE_EXPAND;
mStatusBarManager.disable(flags);
若要再恢复下拉,只需public static final int DISABLE_NONE = 0x00000000;将flags置为此。
OTHER 1:
StatusBarManager.DISABLE_RECENT
StatusBarManager.DISABLE_NOTIFICATION_TICKER
StatusBarManager.DISABLE_SEARCH
OTHER 2:
自写个activity,通过其button组件的onClick方法出发状态栏自动下拉:
核心代码:
private void openExpand() {
try{
Object statuabarService = getSystemService("statusbar");
Class<?> statusbarManager = Class.forName(“android.app.StatusBarManager”);
Method expandStatusbar = null;
if (statuabarService !=null){
expandStatusbar=statusbarManager.getMethod("expandNotificationsPanel");
expandStatusbar.setAccessible(true);
expandStatusbar.invoke(statuabarService);
}
}catch(Exception e){
e.printStackTrace();
}
}
实际code时误写:
。。。。。
if (statuabarService !=null){
expandStatusbar=statusbarManager.getMethod("expandNotificationsPanel");
}
expandStatusbar.setAccessible(true);
expandStatusbar.invoke(statuabarService);
。。。。这样statuabarService =null,在expandStatusbar.setAccessible(true)会报空指针异常!
StatusBarManager类中提供的其他可调用方法:
collapsePanels() : 调用CommandQueue.Callbacks接口的animateCollapsePanels()在PhoneStatusBar中实现收起下拉的通知栏。
另外API>=4.3以上增加了expandSettingsPanel()方法用于实现设置通知栏的显示。
相关链接文章“statusbar—状态栏对外”
- 其他程序中禁止或者自动下拉状态栏
- android禁止状态栏下拉
- SystemUI状态栏禁止下拉
- android禁止下拉状态栏
- Android 禁止状态栏下拉
- android在activity中禁止下拉状态栏的方法
- android4.4全屏应用中禁止状态栏下拉
- android在activity中禁止下拉状态栏的方法
- Android 4.2 禁止下拉状态栏
- Android禁止状态栏下拉 4.4
- Android 禁止系统状态栏下拉
- Android5.0禁止状态栏下拉
- [FAQ11621]KK 全屏界面禁止状态栏下拉
- android在activity内禁止状态栏下拉
- Android 5.1系统禁止通知状态栏下拉
- Android状态栏禁止下拉异常分析
- EXT 根据下拉框动态设置值到其他下拉框或者textfield中
- 通话中状态栏不能下拉
- android--jni编译错误的解决方案:.c源文件出现类似Type 'jstring' could not be resolved
- oracle 查看 用户,用户权限,用户表空间,用户默认表空间
- 《深入x86的内存寻址》I/O 外设硬件开发举例一
- 怎么在csdn中找到自己发布的帖子
- VMware 9 安装 Mac OS X 10.8 Mountain Lion 图文全程
- 其他程序中禁止或者自动下拉状态栏
- SQL Server CONVERT() 函数
- 黑马程序员 学习日记(一)-流程控制
- 《Head First Programming》---python 4_文件和数组中的数据
- 判断字符串是数字、字母、中文
- attribute 用法 section 部分
- Cracking the coding interview--Q20.6
- JavaEE定时器
- Go1.3中新增对Native Client的支持