1.1概述

Android4.0,Androd4.4源代码能够编译成手机模式和平板模式,讯为iTop4412 开发平台

的Android系统默认编译为平板模式。客户须要依据自己的产品设计及应用环境,切换屏幕

的显示方向,或者固定好一个显示方向,比如产品中使用不同分辨率的显示屏,或者显示屏

在产品中的固定方向发生改变等等,都须要进行屏幕旋转功能。  那么怎样设置屏幕的旋转

呢?我们提供两种方式满足客户的这一需求。

1.2  安装屏幕旋转APK

迅为公司公布的  Android4.4镜像中含有  SetOrientation.apk 应用程序,该应用软件会

调整屏幕的旋转角度,如90°。180°。270°方向旋转。

执行 Set Orientation应用软件之前须要把屏幕方向由锁定状态设置为自己主动旋转:

从上至下滑动屏幕右上角,就可以出现下拉菜单:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

下图表示调整为自己主动旋转状态:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

设置完毕以后,我们执行屏幕方向设置软件  SetOrientation :

例如以下图所看到的,该软件能够设置屏幕为  Landscape模式和  Portrait模式。Landscape为屏

幕尺寸长的一方作为顶和底,Portrait为屏幕尺寸短的一方作为顶和底。也就是我们常说的

横屏显示,竖屏显示。

眼下我们的屏幕是横屏显示。我们须要把屏幕设置为竖屏显示:选择  Portrait模式

也能够设置成Portrait (reserve)模式。即Portrait模式然后再旋转  180度:

屏幕旋转角度设置完毕后。须要把屏幕方向状态设置为锁定状态,仅仅有设置了锁定状态,

又一次启动系统后桌面窗体会马上旋转。否则须要等待一段时间才发生旋转动作。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

1.3  更改配置文件

除了使用专有的APK设置屏幕旋转角度,也能够改动Android的属性參数来实现同样的功能。

Android4.0,Android4.4版本号中均有build.pro文件,该文件位于 /system/文件夹以下。此文件

为Android的属性配置文件,我们能够通过改动文件里的ro.sf.hwrotation选项实现屏幕的旋转:

Android4.4系统中编辑此文件之前。须要在调试串口终端中输入  su  命令,然后回车,

这样我们就具备了超级用户权限,就能够通过vi 改动build.pro文件了。否则没有权限改动。

例如以下图所看到的:

注意:迅为公布的Android4.4版本号中集成了vi编辑工具,能够直接使用。

打开属性文件后。找到ro.sf.hwrotation关键选项,改动成须要的旋转角度,这里支持0°,

90°,270°,旋转,例如以下图所看到的

旋转角度改动成  270°:

改动完毕后保存退出,又一次启动系统:

注:Android4.4.4原生系统默认不支持  ro.sf.hwrotation 配置,我们在Android4.4.4代码中移

植了该功能,方便大家使用。  Android4.0.3 原生代码支持该选项配置。

另外您希望烧写到开发平台中的镜像默认就是旋转后的效果,那么须要编辑:

device/samsung/smdk4x12/system.prop配置文件,编译Android代码,烧写system.img到开

发平台:

Android4.0,Android4.4 均为此文件,且文件夹路径同样。

1.4 总结

屏幕旋转的两种方式各有特点。使用屏幕旋转APK,支持0,90,180,270度四个方向

的旋转。可是须要使用软件来设定,当然第一次须要软件设定。以后系统启动后会自己主动进行

角度旋转。另外系统启动过程中Android的启动动画是无法进行旋转的,系统仅仅有进入到桌

面才发生旋转。

使用配置项进行屏幕旋转时,Android系统启动过程中的动画就已经发生了旋转,进入

桌面后你是感觉不到旋转动作的,比較适合产品应用,另外配置项旋转眼下暂不支持180

度,仅支持0,90。270度三个角度的旋转。

以上是屏幕旋转的两种方式,这里屏幕旋转不考虑重力传感器的因素。该功能是基于

Android系统的产品客户需求,希望此文档可以解决您在产品设计中屏幕角度旋转问题。

【分享】迅为iTOP4412开发板-Android系统屏幕旋转设置的更多相关文章

  1. [资料分享]迅为iTOP4412开发板-SDIO WiFi移植文档

    本文转自迅为:http://www.topeetboard.com 概述 近期需要把WiFi无线网络功能移植到iTOP-4412 开发平台,查阅了相关资料,经过一段时间的研究.调试,终于成功的将WiF ...

  2. iTOP-iMX6开发板Android系统下LVDS和HDMI双屏异显方法

    迅为iMX6 开发板 android 系统下 LVDS 和 HDMI 双屏异显的使用过程. 注意,iTOP-iMX6 开发板的 android 系统想要实现对 LVDS 和 HDMI 双屏异显功能的支 ...

  3. 物联网初学者智能家居必备迅为iTOP-4412开发板

    更情点击了解:http://www.topeetboard.com 1.  手把手全视频教程: 第一部分:迅为电子开发板入门视频 第二部分:Linux系统编程 第三部分:Itop-4412开发板硬件设 ...

  4. 迅为4412开发板QtE系统源码-屏幕横竖屏切换修改方法

    迅为4412开发板QtE系统源码-屏幕横竖屏切换修改方法 详情了解:http://topeetboard.com 更多了解:https://arm-board.taobao.com/ 用户在开发板上运 ...

  5. 内容分享-迅为IMX6开发板编译问题及解决方法

    [经验分享]IMX6开发板编译问题及解决方法本文转自迅为IMX6开发板售后讨论群,分享给大家~ 物理主机 win10 64 位专业版.虚拟机 VM12 Pro.开发环境采用迅为提供的开发环境: Ubu ...

  6. [嵌入式开发板]iTOP-4412开发板linux 系统存储空间的修改

    平台:iTOP-4412开发板 这里我们以修改成 1G 存储空间为例来讲解修改方法, 如果需要改 成其他大小的存储空间,参照此方法修改即可. 首先连接好 iTOP-4412 开发板的调试串口到 pc  ...

  7. 迅为iTOP-4412开发板Ubuntu操作系统烧写方法

    本文转自:http://www.topeetboard.com Ubuntu系统烧写硬件平台:iTOP4412开发板 需要准备:串口线.读卡器.一张SD卡最好是2G(自备).另外一张卡(大于等于2G都 ...

  8. 【转帖】迅为iTOP-iMX6开发板 Ubuntu系统下WiFi模块mt6620的移植

    本文转自迅为论坛 :http://www.topeetboard.com 文档提供的文件如下. wpa_supplicant 拷贝到开发板 Ubuntu 系统的 /sbin 目录下,如何移植 wpa_ ...

  9. 迅为-IMX6开发板Android Eclipse 导入Led应用程序工程

    本小节给大家详细讲解如何导入 Android 应用的工程文件.先解压迅为“iTOP-IMX6-Android4.4-LED 测试程序 r”压缩包.如下图所示,解压出ledtest 文件夹.<ig ...

随机推荐

  1. 6.12---前提两个对象的成员必须一致,才能将有数据的对象将数据传给反射获取的对象conver(有数据对象,目标对象)

    //// Source code recreated from a .class file by IntelliJ IDEA// (powered by Fernflower decompiler)/ ...

  2. NodeJS —— 自定义流的实现

    概述 常见的自定义流有四种,Readable(可读流).Writable(可写流).Duplex(双工流)和 Transform(转换流),常见的自定义流应用有 HTTP 请求.响应,crypto 加 ...

  3. UVM基础之---------uvm report 机制分析

    uvm 中的信息报告机制相对来说比较简单,功能上来说主要分为两部分: 第一通过ID对component的信息报告冗余级别进行控制,针对每个冗余级别进行不同的行为控制.这部分工作主要由uvm_repor ...

  4. ajax的底层前后台交互

    为什么用ajax或者它的优点: 异步加载数据,无需切换页面 更加的用户体验,局部刷新,及时验证,操作步骤简化: 节省流量 js控制数据的加载,更加灵活多用. 底层就是XMLHttpRequest对象: ...

  5. LockDemo 锁对象

    class Resource { private boolean flag = false; private String name; private int count; //资源锁 Lock lo ...

  6. Erwin 带注释(comment )

    1. Database>Pre & Post Script > Model-level %ForEachTable() { alter TABLE %TableName COMME ...

  7. Redis 它是什么?它用来做什么?它的优势与短板如何?

    阅读目的: 对什么是内存型数据库有概念性的认知.? Redis 是什么? 通常而言目前的数据库分类有几种,包括 SQL/NSQL,,关系数据库,键值数据库等等 等,分类的标准也不以,Redis本质上也 ...

  8. 反转链表_JAVA

    package algorithms; /* * * * 输入一个链表,反转链表后,输出新链表的表头. * public class ListNode { int val; ListNode next ...

  9. Redis系列(四)--持久化

    持久化就是将数据的更新异步的保存到磁盘中 持久化方式: 1.快照:某个时间点数据的备份 MySQL dump.Redis RDB 2.写日志:MySQL BinLog.HBASE Hlog.Redis ...

  10. 数组array的常用方法简介

    数组方法简介 数组总共有22种方法,本文将其分为以下几类来进行详细介绍. 原数组变化:push() pop() shift() unshift() reverse() sort() splice() ...