`
modabobo
  • 浏览: 508224 次
文章分类
社区版块
存档分类
最新评论

修改Android屏幕默认旋转方向

 
阅读更多

通过修改数据库System settings 来修改手机屏幕的旋转方向, 设置Settings.System.ACCELEROMETER_ROTATIONSettings.System.USER_ROTATION的值,可以通过命令行和Java API来实现

1.通过命令行来修改

  1. su
  2. sqlite3/data/data/com.android.providers.settings/databases/settings.db
  3. insertintosystem(name,value)values('accelerometer_rotation',0);
  4. insertintosystem(name,value)values('user_rotation',1);
  5. .exit

其中,user_rotation的值和旋转角度的关系如下,

  • user_rotation 0 -> ROTATION_0
  • user_rotation 1 -> ROTATION_180
  • user_rotation 2 -> ROTATION_270
  • user_rotation 3 -> ROTATION_90

2.通过java 程序实现

首先取消手机的重力感应(0 禁用,1 开启)

  1. publicvoiddisableAccelerometerRotation(){
  2. try{
  3. Settings.System.putInt(mcontext.getContentResolver(),Settings.System.ACCELEROMETER_ROTATION,0);
  4. }catch(Exceptione){
  5. e.printStackTrace();
  6. }
  7. }

设置指定的屏幕旋转方向

  1. publicvoidsetScreenRotation(StringrotationStr){
  2. introtation=0;//Surface.ROTATION_90;
  3. if(rotationStr.equals("0")){
  4. rotation=Surface.ROTATION_0;
  5. }elseif(rotationStr.equals("90")){
  6. rotation=Surface.ROTATION_90;
  7. }elseif(rotationStr.equals("180")){
  8. rotation=Surface.ROTATION_180;
  9. }elseif(rotationStr.equals("270")){
  10. rotation=Surface.ROTATION_270;
  11. }
  12. Settings.System.putInt(mcontext.getContentResolver(),Settings.System.USER_ROTATION,rotation);
  13. }

因为修改了Settings的值,所以在程序中添加权限声明:

<uses-permission android:name="android.permission.WRITE_SETTINGS"/>


本文出自 “whithin's” 博客,请务必保留此出处http://whithin.blog.51cto.com/690417/1066779

分享到:
评论

相关推荐

    Android实现屏幕旋转方法总结

    在介绍之前,我们需要先了解默认情况下android屏幕旋转的机制: 默认情况下,当用户手机的重力感应器打开后,旋转屏幕方向,会导致当前activity发生onDestroy-&gt; onCreate,这样会重新构造当前activity和界面布局,...

    Rotation - 强大的屏幕方向管理v26.1.1专业版

    Rotation是Android控制设备方向的工具。它提供了Android支持的所有模式,并且可以根据应用程序或各种事件进行配置,例如通话、锁定、耳机、充电和底座。应用程序具有特定模式并不重要,它完全覆盖应用程序和系统设置...

    新版Android开发教程.rar

    ----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...

    Android开发应用实战详解源代码

    6.13 修改默认开机显示 6.14 小结 第7章 娱乐和多媒体应用 7.1 获取图片的宽和高 7.1.1 实现原理 7.1.2 位图操作的基本知识 7.1.3 具体实现 7.2 绘制几何图形 7.3 手机屏保 7.4 照片拖动效果 7.5 存储卡中的图片 7.6...

    《Google Android SDK开发范例大全(第3版)》.pdf

    5.22 动态更改屏幕方向 254 5.23 系统设置更改事件 257 5.24 取得电信网络与手机的相关信息 261 5.25 建立自己的手写笔画图案 266 5.26 判断手持设备的wifi与gps状态 272 5.27 手机安全设置管理器 ...

    Google Android SDK开发范例大全(第3版) 1/5

    5.22 动态更改屏幕方向 5.23 系统设置更改事件 5.24 取得电信网络与手机的相关信息 5.25 建立自己的手写笔画图案 5.26 判断手持设备的WiFi与GPS状态 5.27 手机安全设置管理器 5.28 Shell Script运行Cmmand 5.29 模拟...

    Google Android SDK开发范例大全(PDF高清完整版1)(4-1)

    5.22 动态更改屏幕方向——LANDSCAPE与PORTRAIT 5.23 系统设置更改事件——onConfigurationChanged信息处理 5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 ...

    Google Android SDK开发范例大全(第3版) 4/5

    5.22 动态更改屏幕方向 5.23 系统设置更改事件 5.24 取得电信网络与手机的相关信息 5.25 建立自己的手写笔画图案 5.26 判断手持设备的WiFi与GPS状态 5.27 手机安全设置管理器 5.28 Shell Script运行Cmmand 5.29 模拟...

    Google Android SDK开发范例大全(PDF完整版4)(4-4)

    5.22 动态更改屏幕方向——LANDSCAPE与PORTRAIT 5.23 系统设置更改事件——onConfigurationChanged信息处理 5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 ...

    Google Android SDK开发范例大全(第3版) 3/5

    5.22 动态更改屏幕方向 5.23 系统设置更改事件 5.24 取得电信网络与手机的相关信息 5.25 建立自己的手写笔画图案 5.26 判断手持设备的WiFi与GPS状态 5.27 手机安全设置管理器 5.28 Shell Script运行Cmmand 5.29 模拟...

    Google Android SDK开发范例大全(第3版) 5/5

    5.22 动态更改屏幕方向 5.23 系统设置更改事件 5.24 取得电信网络与手机的相关信息 5.25 建立自己的手写笔画图案 5.26 判断手持设备的WiFi与GPS状态 5.27 手机安全设置管理器 5.28 Shell Script运行Cmmand 5.29 模拟...

    Google Android SDK开发范例大全(PDF高清完整版3)(4-3)

    5.22 动态更改屏幕方向——LANDSCAPE与PORTRAIT 5.23 系统设置更改事件——onConfigurationChanged信息处理 5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 ...

    Google Android SDK开发范例大全(第3版)part2

     5.22 动态更改屏幕方向  5.23 系统设置更改事件  5.24 取得电信网络与手机的相关信息  5.25 建立自己的手写笔画图案  5.26 判断手持设备的WiFi与GPS状态  5.27 手机安全设置管理器  5.28 Shell Script...

    Google Android SDK开发范例大全的目录

    5.22 动态更改屏幕方向——LANDSCAPE与PORTRAIT 5.23 系统设置更改事件——onConfigurationChanged信息处理 5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 ...

    Google Android SDK开发范例大全(完整版附部分源码).pdf

    5.22 动态更改屏幕方向——LANDSCAPE与PORTRAIT 5.23 系统设置更改事件——onConfigurationChanged信息处理 5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6...

    google android sdk开发范例大全 第二版 PDF 光盘代码

     5.22 动态更改屏幕方向   5.23 系统设置更改事件   5.24 取得电信网络与手机的相关信息   5.25 建立自己的手写笔画图案  第6章 手机自动服务纪实   6.1 您有一条短信pop up提醒   6.2 ...

Global site tag (gtag.js) - Google Analytics