R.java -- 是根据res下面的Main.xml
当activity 调用 setContentView() 时,android 才会去绘制 layout 上的各个元素,并为其分配内存。只有 分配了内存以后,才能继续执行 ,findViewById(); 才能得到引用,不然得到空引用。
空引用意味着,后面使用相应变量时就会发生访问的对象不存在的问题。
而且当Activity重新setContentView()以后,那些之前绘制的控件,内存都被灭掉了。
所以,若是通过setContentView 来达到画面切换目的的,要注意重新绘制以后重新取得引用。
在多个activity之间切换的时候,注意每个用到的activity都应在AndroidManifest.xml中有所声明定义