我是 Android 开发的新手。我正在尝试使用方向更改在两个活动之间切换。我的想法是使用三个活动一个 TabActivity 和一个正常的活动。这是一些伪代码:
public class Main extends Activity{
// this is the entry point into my app
@Override
public void onCreate(...){
if(this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE){
// Start Activity1
} else { //Start Activity2}
}
Activity Activity1 和 Activity2 将覆盖其 onPause() 函数,以再次启动 Main Activity。
onPause(){
Intent intent = new Intent(this.ActivityX, Main.class);
startActivity(intent);
}
\/\/\/\/ 编辑 \/\/\/\/
好的,我正在采取不同的方法。因为我需要一个 TabActivity,因为我希望能够在我的选项卡中启动不同的活动(我认为在这种情况下我必须使用 TabActivity)。
我已经编辑了 Manifest.xml 并为 TabActivity 和第二个 Activity 添加了 android.configChanges="orientation"。然后我重写了 onConfigurationChanged() 函数。使用这种方法,我可以从横向(这是“正常”活动”)切换到纵向(TabActivity)。相反的方式不起作用,我还不知道为什么。我完全一样onConfigurationChanged 函数(复制和粘贴)并且只更改了必要的部分。
覆盖在选项卡中启动的活动的 onConfigurationChanged 也没有效果。