您现在的位置:首页 > 博客 > Android开发 > 正文
android Sensor 360°转屏
http://www.drovik.com/      2012-9-9 22:41:28      来源:Steersman原创      点击:
任务中国 taskcn.com

一般的android屏幕旋转只能转动90,为了给用户带来更佳的用户的体验,我们让android能够360°转屏,不论你以怎样的方向拿着设备,屏幕总能跟着旋转。

下面是实现方法。

这个实现相对比较简单,只需修改一个源文件就OK。

这个文件就在frameworks\base\core\java\android\view下

整个android 重力感应就在WindowOrientationListener.java中实现。

下面开始休息源码:

1、添加两个方向位

private static final int ROTATION_270 = 2;
private static final int ROTATION_180 = 3;

2、修改INTERNAL_TO_SURFACE_ROTATION属性

{ Surface.ROTATION_0, Surface.ROTATION_90, Surface.ROTATION_270, Surface.ROTATION_180};

3、修改SURFACE_TO_INTERNAL_ROTATION属性

{ROTATION_0, ROTATION_270, ROTATION_180, ROTATION_90};

4、修改THRESHOLDS属性

{{60, 120}, {120, 240}, {240, 300}},
{{0, 45}, {45, 135}, {135, 225}, {330, 360}},
{{0, 30}, {135, 225},{225, 315}, {315, 360}},
{{0, 60}, {60, 120}, {240, 300}, {300, 360}}

5、调整ROTATE_TO

{ROTATION_270, ROTATION_180, ROTATION_90},
{ROTATION_0, ROTATION_270, ROTATION_180, ROTATION_0},
{ROTATION_0, ROTATION_180, ROTATION_90, ROTATION_0},
{ROTATION_0, ROTATION_270, ROTATION_90, ROTATION_0}

6、编译 运行

Ok、

分享到:
发表评论(0)
姓名 *
评论内容 *
验证码 *图片看不清?点击重新得到验证码