屏幕方向更改不调用活动方法

时间:2013-05-02 15:06:55

标签: android android-activity screen-orientation

所以在这个主题上有很多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()方法按钮。

总而言之,似乎没有任何生命周期方法被调用。

1 个答案:

答案 0 :(得分:0)

最后做对了。在用户活动中调用了一些其他活动启动它,因此当前活动不是考虑方向的有关活动。在另一项活动中,我添加了记录器来检查方向变化及其工作正常。