我一直在开发Android应用程序,而且在水平放置手机时遇到了一个小问题。
目前我有两个视图:主视图(main.xml)和登录视图(login.xml)。当我在login.xml视图中转动手机时,它会将我返回到main.xml视图。如果手机处于水平位置+ login.xml并且我再次转动(返回main.xml),也会发生同样的事情。
它看到每次执行“OnCreate”,这是应用程序的代码:
public class AppActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ImageButton bout= null;
bout = (ImageButton)findViewById(R.id.imageButton1);
bout.setOnClickListener(boutlisten);
}
private OnClickListener boutlisten = new OnClickListener(){
public void onClick(View v) {
setContentView(R.layout.login);
}
};
}
提前致谢!
答案 0 :(得分:1)
创建具有setContentView(R.layout.login);
并启动活动的新活动。
像,
public class LoginActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
}
}
附录: 这是启动上述声明活动的代码。还应该在清单文件中声明活动
private OnClickListener boutlisten = new OnClickListener(){
public void onClick(View v) {
Intent myIntent = new Intent(v.getContext(), LoginActivity.class);
startActivity(myIntent);
}
};
答案 1 :(得分:0)
另外,因为你必须已经知道..不要忘记在AndroidManifest.xml中声明新活动
<activity android:name=".LoginActivity" />
或者,您也可以强制您的活动垂直运行。只需将其添加到AndroidManifest.xml中的Main活动标记
即可<activity android:screenOrientation="portrait" ...../>