3.1 问题
在某些特定的条件下,不能让屏幕旋转,但这个条件是临时的或是根据用户的意愿决定的。
3.2 解决方案
(API Level 1)
借助Android的请求方向机制(requested orientation mechanism),应用程序可以调整显示Activity的屏幕方向,将其固定为某个方向或是交由设备决定。这是通过调用Activity.SetReActivity的屏幕方向。这通常是根据设备的物理方向来确定的。当前请求的方向可以随时通过调用Activity.getRequestedOrientation()方法获得。
3.3 实现机制
举个示例,让我们创建一个ToggleButton实例来控制是否锁定当前屏幕方向,这样就能让用户随时控制Activity的方向。以下代码描绘了在其中定义ToggleButton实例的简单布局。
res/layout/activity_lock.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ToggleButton
android:id="@+id/toggleButton"
android:layout_width=