2

我的主要活动有4个图像,屏幕方向为“肖像”。当我遍历具有屏幕方向为“风景”的子Activity时。问题:在不同的活动中更改屏幕方向

问题:当我从孩子活动回到主活动时,4个图像被重新分配到不同的位置。我需要解决这个问题,以便即使屏幕方向发生变化,Activity也可以正常工作。

在此先感谢。

布局

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@android:style/Theme.Black"> 
    <activity 
     android:name=".DragDrop" 
     android:label="@string/title_activity_main" 
     android:screenOrientation="landscape" 
     android:configChanges="orientation|screenSize|keyboardHidden" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 


    <activity 
     android:name=".QuizHard" 
     android:label="@string/title_activity_main" 
     android:screenOrientation="landscape" 
     android:configChanges="orientation|screenSize|keyboardHidden" > 

     <intent-filter> 
      <action android:name="android.intent.action.QUIZHARD" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
    </activity> 

</application> 
+0

当你回来的时候,什么是定位?发布您的布局。 – minhaz 2013-03-18 04:50:42

回答

0

可以设置取向主要活动在Android清单文件子活动景观的肖像。

 <activity android:name="Main" 
     android:screenOrientation="portrait"/> 

类似地为儿童活动设置景观方向。

0

您可以将语句添加到您的AndroidManifest.xml文件,以告诉它处理某些屏幕更改,如方向更改。通常情况下,当方向改变时,一个新的布局被加载并重新创建屏幕,通过将这个语句添加到清单文件中,它不会重新创建视图。更改活动的活动声明并添加此声明。

<activity 
     android:name=".MainActivity" 
     android:configChanges="orientation" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

android:configChanges="orientation"将防止从Android的重新创建的活动,从而防止它从重新加载视图和改变图像的位置。如果您希望Android将方向锁定为纵向或横向(如果需要),您还可以在configChanges语句后面添加android:screenOrientation="portrait"

希望这有助于!希望能够从结果中听到你的回音。

0

你可以这样

<activity android:name="Main" android:screenOrientation="portrait"/> 

在清单中添加定向活动,或者您可以设置布局方向上的Java文件这样

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);