代码:package com.siren.calc;import android.app.Activity;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.Menu;
import android.view.Window;import android.widget.Button;public class MainActivity extends AppCompatActivity {    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_main);        Button button1=(Button) this.findViewById(R.id.button1);
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                setContentView(R.layout.life);
            }
        });
        Button button2=(Button) this.findViewById(R.id.button2);
        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                setContentView(R.layout.qinshu);
            }
        });
    }
}    public void goTOLayout1(){
        //将layout由activity_main切换到life
        setContentView(R.layout.life);
        Button button_life=(Button) this.findViewById(R.id.button_life);
        button_life.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                goTOLayoutMain();
            }
        });
    }    public  void goTOLayoutMain(){
        //由life切换到activity_main
        setContentView(R.layout.activity_main);        Button button1=(Button) this.findViewById(R.id.button1);
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                goTOLayout1();
            }
        });
    }错误:Error:(47, 5) 错误: 需要class, interface或enum
希望各位大牛们可以帮忙解答一下小白的疑惑,谢谢

解决方案 »

  1.   

       //由life切换到activity_main  之后  Button button2=(Button) this.findViewById(R.id.button2); 需要重新绑定
      

  2.   

    表示很难理解,为什么要这么做。不过还是说下原因,setContentView 后整个Activity的View会被重建,相关控件(如这里的Button按钮)都需要重新从相应的布局里找到(即findViewById)并绑定相应的事件。参考这里http://bbs.csdn.net/topics/350073783