可滑动的系统状态栏控制面板(wifi,bluetooth,数据通信,声音,自动旋转)

 

       在系统状态栏里添加一些开关,便于用户操作一些常用的操作,比如开关Wifi,开关蓝牙,开关数据通信等,这些都是在设置里可以控制 的,但是用户要点击多次之后才能到达要去的区域,这个对用户体验不佳。所以在状态栏里添加些控制按钮很有必要,一般一个页面放3到5个开关布局比较好看,但是要是想放多个多个开关,则可以通过布局画或者用组件。

       左右滑动可以使用ViewFlipper组件来实现视图之间的切换,然后添加手势控制类即可。

                     


我为了方便修改项目,把控制面板的代码单独的提取出来,放到一个类里控制。

首先添加布局,在SystemUI的status_bar_expanded.xml里添加自定义的类。

    <com.android.systemui.statusbar.SwitchControlPanel 
    	android:id="@+id/switch_control_panel"
    	android:layout_height="wrap_content" 
    	android:layout_width="match_parent"/>

然后要去SystemUI的StatusBarService.java里初始化这个类,这样系统启动时候就会发现这个类,进而进行操作了。

SwitchControlPanel  mPanel;


mPanel = (SwitchControlPanel)expanded.findViewById(R.id.switch_control_panel);

然后就可以操作SwitchControlPanel.java这个类了,这个是继承于LinearyLayout,所以要在里面添加布局,需要用到inflate这个类,因为不是在Activity里使用,所以这里就与众不同点。


package com.android.systemui.statusbar;

import android.content.BroadcastReceiver;
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值