Android 使用findViewById得到null

今天调试一段程序发现一个隐蔽的小问题,找了好久才找到问题。 我用layout定义了一个button. 但是在程序中无法用findViewById获得到它的引用(得到的是null)。 layout.xml定义如下 <Button id="@+pageBar/next_bt" android:layout_width="80px" android:layout_height="40px" android:text="下页"/> nextBt = (Button)findViewById(R.pageBar.next_bt); 得到的结果nextBt为null; 百思不解,最后仔细查看,与其它代码对比,终于发现一个小问题,就是id的问题。不应该使用id="@+pageBar/next_bt"(据说是android的原来的风格) 现在的风格是android:id="@+pageBar/next_bt" 修改后就可以了。 以下我在网上找了其它原因: 1、在setContentView之前调用findViewById 2、layout文件夹,layout-land和layout-port文件夹没有分清,导致修改的layout文件没有起效果 3、想要得到的xml布局中的View不在当前活动中,要使用View layout=inflater.inflate(R.layout.{布局文件}, null)得到控件所在的布局View,R.layout.{布局文件}就是你想要得到的控件所在的布局。然后利用这个布局来寻找 转载请标明出处:3G Study :http://blog.3gstdy.com/archives/43