Home

cubie.cc CubieBoard中文论坛

 找回密码
 立即注册
搜索
热搜: unable
查看: 546|回复: 0

如何在s500(cb6) 源码中删除Setting里的自动旋转屏幕按钮

[复制链接]

7

主题

0

好友

1774

积分

金牌会员

Rank: 6Rank: 6

贡献
330
金钱
777
威望
330
买家信用
卖家信用
积分
1774
发表于 2017-6-12 21:28:46 |显示全部楼层
本帖最后由 Mbao 于 2017-6-14 11:07 编辑

  自动旋转屏幕位置在:Setting -->accessibility ---->auto-rotate screen(自动旋转开关)
   
既然知道其位置,我们只需要用以下
指令查找auto-rotate screen 在Setting源码中的哪个文件里有定义.
  1.     cd android/packages/apps/Settings/  
复制代码
  1. grep -nHrw "auto-rotate screen"  ./   
复制代码
经过代码分析排除后可以发现其主要在accessibility_settings.xml定义了控件属性,在AccessibilitySettings.java引入了这个控件属性,并实现了这个控件的功能方法
这样我们只要删除这两个文件里定义
auto-rotate screen  相关就可以

1)先删除其布局文件.
        在  packages/apps/Settings/res/xml/accessibility_settings.xml  中注释掉以下代码
            
  1. <SwitchPreference
  2.                 android:key="toggle_lock_screen_rotation_preference"
  3.                 android:title="@string/accelerometer_title"
  4.                  android:persistent="false"/>
复制代码
      
2)再删除其定义属性和及相关功能方法.
    在 packages/apps/Settings/src/com/android/settings/accessibility/AccessibilitySettings.java  注释掉以下代码就可以
  1. private static final String               TOGGLE_LOCK_SCREEN_ROTATION_PREFERENCE="toggle_lock_screen_rotation_preference";

  2. mToggleLockScreenRotationPreference=(SwitchPreference)findPreference(TOGGLE_LOCK_SCREEN_ROTATION_PREFERENCE);

  3.     if (!RotationPolicy.isRotationSupported(getActivity())) {
  4. mSystemsCategory.removePreference(mToggleLockScreenRotationPreference);
  5. }

  6. // Auto-rotate screen
  7. updateLockScreenRotationCheckbox();
复制代码
注意:最后编译之前先要删除android 文件夹里的out文件




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

QQ|Archiver|手机版|邮件群发|cubie.cc---深刻的嵌入式技术和应用讨论中文社区 ( 粤ICP备13051116号-1  

GMT+8, 2017-9-21 07:45 , Processed in 0.016256 second(s), 8 queries , Apc On.

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc. | Style by Coxxs

回顶部