我正在编写一个自定义 Activity 类(将它用作我的其他 Activity 类的超类),它覆盖了许多默认功能。我想要的这些功能之一是方向处理,虽然我可以做到,但它需要
android:configChanges="orientation"
在清单中。有没有办法强制执行与上面一行相同的事情,但在 java 代码中?
我正在编写一个自定义 Activity 类(将它用作我的其他 Activity 类的超类),它覆盖了许多默认功能。我想要的这些功能之一是方向处理,虽然我可以做到,但它需要
android:configChanges="orientation"
在清单中。有没有办法强制执行与上面一行相同的事情,但在 java 代码中?
您仍然需要在 XML 中包含该属性,但您也可以在 Java 中处理它;在这里查看我的博客文章:http: //c0deattack.wordpress.com/2010/12/25/dealing-with-screen-orientation-changes-manually/
编辑:您不能以编程方式设置 configChanges 属性。我想这与创建活动的方式有关。它们首先从 XML 创建,然后调用活动实现中的覆盖方法。API 中没有任何内容可以让您更改 configChanges 属性。
您可以在“android:configChanges”中添加所有可能的值,并在 Activity 中覆盖onConfigurationChanged方法,但仅针对您需要的情况调用Activity.receate() 。