在一个活动中跨越不同布局的按钮状态?

时间:2012-01-29 07:06:38

标签: android events button android-activity input

我有2个按钮可以在同一个活动中切换2个布局:单击layout1上的button1,它转到布局2(使用setContentView)。在layout2上,单击button2,它将返回到layout1。然后button1不再响应OnClickListener。我查看了“输入事件”,但仍然无法弄明白。发生了什么以及如何解决它?

提前致谢!

Button submitBtn;
Button backBtn;
submitBtn = (Button)findViewById(R.id.button1); //on layout1
backButn = (Button)findViewById(R.id.button2);  //on layout2
submitBtn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
          setContentView(R.layout.layout2);
                    }
    });
backBtn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
          setContentView(R.layout.layout1);
                   }
    });

2 个答案:

答案 0 :(得分:1)

您应该在切换布局时重新分配侦听器,导致在您调用setContentView时查看旧视图,并创建新组件。

答案 1 :(得分:0)

您必须在更改布局时设置contentview,否则视图将为null。