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,或多个
活动
,其中状态将为您处理。否则,您需要在每次布局更改后重新初始化所有
视图。