转到以前的布局?

时间:2016-04-24 00:49:01

标签: java android android-layout

所以我有两个布局,当按下ImageButton时我切换到第二个布局。在我的nexus 6中,我如何保持第一个布局运行,所以当我在第二个布局上并按回来时它会显示第一个布局?

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);
            }
        });



    }
}

1 个答案:

答案 0 :(得分:0)

一般的想法,虽然可怕的建议。最好用Fragments and take advantage of the back stack

List<Integer>开头。

将第一个视图存储在其上

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++));

实施onBackPressed返回。但是要注意越界异常。

setContentView(list.get(--position));

如果您想要实现一项功能,那么

setContentView(list.get(++position));