Android 滑动解锁,如何客制化滑向四个方向上的快捷解锁应用及图标 M

前言
         欢迎大家我分享和推荐好用的代码段~~
声明
         欢迎转载,但请保留文章原始出处:
         CSDN
http://www.csdn.net
         雨季o莫忧离:http://blog.csdn.net/luckkof

正文


1. ICS和JB上,滑动解锁滑向四个不同方向,可直接解锁并打开不同应用程序。
Android 滑动解锁,如何客制化滑向四个方向上的快捷解锁应用及图标 M_第1张图片
2. JB2上,只有向左滑动解锁这一个图标。
Android 滑动解锁,如何客制化滑向四个方向上的快捷解锁应用及图标 M_第2张图片

1. ICS和JB上,如需修改四个不同方向上的应用及图标,可做如下修改:
    1).修改四个方向的应用图标定义数组:Arrays.xml (frameworks\base\core\res\res\values)
  
        @drawable/ic_lockscreen_unlock
        @drawable/ic_action_assist_generic
        @drawable/ic_lockscreen_camera
        @null
   
   其引用在keyguard_screen_tab_unlock_gemini.xml中:
   android:targetDrawables="@array/lockscreen_targets_with_camera"  
   android:targetDescriptions="@array/lockscreen_target_descriptions_unlock_only"
   2). 实现滑向不同图标之后的响应。
   修改onTrigger()中每个图标的处理操作。
   LockScreen.java
   public void onTrigger(View v,int target){
   .........
  switch(resId){
      case com.android.R.drawable.ic_action_assist_generic://修改对应图标的处理动作。
      .................}
 
2. JB2上,可在其他三个方方向上添加快速解锁应用图标:
   1).修改四个方向的应用图标定义数组: Arrays.xml (frameworks\base\core\res\res\values)
   
        @*android:drawable/ic_lockscreen_unlock
   
   其引用在Keyguard_glow_pad_view.xml (frameworks\base\core\res\res\layout)
   prvandroid:targetDrawables="@array/lockscreen_targets_unlock_only"  
   prvandroid:targetDescriptions="@array/lockscreen_target_descriptions_unlock_only"
   可以修改prvandroid:targetDrawables所引用的值,达到添加图标在圆圈的其他方向。
   2). 实现点击图标之后的响应
   在KeyguardSelectorView.java (frameworks\base\policy\src\com\android\internal\policy\impl\keyguard)
   MediatekGlowPadView.OnTriggerListener mOnTriggerListener = new MediatekGlowPadView.OnTriggerListener() {
        public void onTrigger(View v, int target) {
            final int resId = mGlowPadView.getResourceIdForTarget(target);
            switch (resId) {
                case com.android.internal.R.drawable.ic_action_assist_generic: //此处,每个case分支对应点击某个图标。
   参考这里实现即可。
PS: google一般最多加三个图标,因为有些屏幕尺寸限制,加四个的话,圆圈放大时最下方的那个图标可能会显示不全。如果添加四个,某些屏幕尺寸需要调整UI上其他控件的大小,位置等,这个根据不同屏幕分辨率微调即可。

你可能感兴趣的:(Android,MTK)