你既然已经 findViewById了你的button了,你又去实例化一个btn,那这样你的btn其实是你new的那个,但是你在你的Activity上看到的是你findViewById的那个Button,你new的btn由于你没设置他的位置,所以你看不到!
if(btn==null)btn=(Button)findViewById(R.id.Button); btn=new Button(this);
你这里有问题你这句重新创建了一个button对象,当然点击button没有反映了