所以在这个主题上有很多SO帖子,但在我的案例中都没有。
方向不是要求任何活动方法。
我尝试了所有可能提到的方式:
将android:configChanges="orientation|keyboardHidden|screenSize"
放入调用活动中。
然后将onConfigurationChanged
方法放在:
@Override
public void onConfigurationChanged(Configuration conf) {
super.onConfigurationChanged(conf);
System.out.println("on onConfigurationChanged called..............");
}
但它没有被召唤。
当我更改屏幕方向时, onCreate()
,onResume()
,onRestoreInstanceState()
方法也未被调用。
此外,我更改了sdk版本和目标版本但没有成功。
更新:
我从活动清单中获得的活动部分是:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.wassap.main"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="16"/>
<activity
android:name=".UserActivity"
android:label="@string/app_name"
android:launchMode="singleTask"
android:configChanges="orientation|keyboardHidden|screenSize" >
</activity>
相关的UserActivity XML -
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:clickable="true"
android:onClick="buildDocument">
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Build Document">
</TextView>
</LinearLayout>
UserActivity
类是onClick buildDocument之后我在其中orientation
的类。
当我在UserActivity
时,可能只需点击 buildDocument ,我也注意到当我back
点击后面时也没有调用destroy()方法按钮。
总而言之,似乎没有任何生命周期方法被调用。
答案 0 :(得分:0)
最后做对了。在用户活动中调用了一些其他活动启动它,因此当前活动不是考虑方向的有关活动。在另一项活动中,我添加了记录器来检查方向变化及其工作正常。