Android最佳实践:如何让活动以任何方向开始,但不允许更改方向

Phi*_*uth 1 android orientation screen-orientation

我正在编写一个可以在手机和Honeycomb平板电脑上运行的Android应用程序,并且几乎可以根据操作系统运行不同的活动.在非蜂窝设备上,我将所有活动锁定为纵向以便于用户界面,蜂窝状体也是如此,只有它们全部锁定在景观上,再次为了更好的用户体验和用户体验.

我有一些以对话为主题的活动,例如我编写的文件浏览器,我想在任一设备上使用,并且对话活动与当前应用程序的方向相同.因此,如果用户正在使用电话,对话框将以纵向显示,他们可以选择他们的文件,活动将消失,用户将继续.如果他们使用的是Honeycomb设备,则对话框活动将以横向显示,并且将应用相同的规则.

但是,我不想让方向动态变化.如果文件浏览器活动在屏幕上,则不应允许用户旋转设备,因为基础活动不支持它.

我正在寻找有关如何实现这一目标的建议.

Che*_*ami 5

您可以android:configChanges="orientation"在AndroidManifest中添加活动,以通知操作系统您正在处理方向更改.通常我们会在onConfigurationChanged方法中实现某种处理,但在这种情况下你什么都不做.