Java 要转到以前的布局吗?
因此,我有两个布局,当按下Java 要转到以前的布局吗?,java,android,android-layout,Java,Android,Android Layout,因此,我有两个布局,当按下ImageButton时,我切换到第二个布局。在我的Nexus6上,如何保持第一个布局运行,以便在第二个布局上按back键时显示第一个布局 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState
ImageButton
时,我切换到第二个布局。在我的Nexus6上,如何保持第一个布局运行,以便在第二个布局上按back键时显示第一个布局
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ImageButton ImageButton = (ImageButton) findViewById(R.id.image);
ImageButton.setBackgroundColor(1);
ImageButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view)
{
setContentView(R.layout.layoutsecond);
}
});
}
}
总的想法,虽然是可怕的建议。最佳使用 从
列表开始
将您的第一个视图存储在上面
list.add(R.layout.view1);
在onCreate
中设置内容视图,并增加所处版面的位置
int position = 0; // make this a field variable
setContentView(list.get(position++));
再次调用setContentView
时,增加并添加更多布局ID
list.add(R.layout.view2);
setContentView(list.get(position++));
执行on返回按
返回。不过,要小心越界异常
setContentView(list.get(--position));
如果您想要实现一个功能,那么
setContentView(list.get(++position));
您可以为任务使用2个片段。当你按下按钮时添加第二个片段,当你按下后退按钮时,上一个片段将自动显示。正如你在上一个问题中提到的,像这样更改布局并不是一个好主意。使用另一种导航模式,如
片段
s,或多个活动
,其中状态将为您处理。否则,您需要在每次布局更改后重新初始化所有视图。