package info.qingchun;import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;public class Demo extends Activity {
    Button btn1;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        btn1 = (Button)findViewById(R.id.btn1);
        ClickDo clickDo = new ClickDo(this);
        btn1.setOnClickListener(clickDo);
        
    }
    
}
class ClickDo implements OnClickListener{
Demo demo;
ClickDo(Demo demo){
this.demo = demo;
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn1:
demo.setContentView(R.layout.mylayout);
Button btn2 = (Button)demo.findViewById(R.id.btn2);
btn2.setOnClickListener(this);
break;
case R.id.btn2:
demo.setContentView(R.layout.main);
Button btn1 = (Button)demo.findViewById(R.id.btn1);   //为什么还要在这里再声明button并
btn1.setOnClickListener(this);                              //注册事件呢?


break;
}
}


}我的疑惑上面已经标出了,为什么代码的上部已经注册了btn1的点击事件,下面还要再注册才能用呢?
求助