addRoom.setOnClickListener(new android.view.View.OnClickListener(){
public void onClick(View v) {
builder = new AlertDialog.Builder(RoomSet.this);
TableLayout addroom = (TableLayout)getLayoutInflater().inflate(R.layout.addroom, null);
builder.setView(addroom);
newRoomET = (EditText)findViewById(R.id.addroom_et);
builder.setPositiveButton("确定"
// 为按钮设置监听器
, new android.content.DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
//此处可执行登录处理
name = newRoomET.getText().toString();//①处
...
}
}
}
}
为什么①处会出现空指针异常
解决方案 »
- wifi 连接热点疑问
- 向熟悉Android-openGL ES在ndk上的编程的大牛们求教,有一个关于eglGetDisplay的问题纠结很多天了!
- 怎么在透明图片上加颜色
- 求助,Android怎么调试程序啊,设置了断点
- 关于客户端解析服务端的json串
- Android程序员修炼之道,对程序员影响最大的书籍,欢迎码友顶贴
- 如何监听应用程序意外终止?
- 开发的一个android程序,总是显示无法运行,就退出了。但是没有报错。求大神解救啊!
- 如何将SQLite文件从assets目录拷贝到database目录下面
- 请问 Android 如何解决控件层叠顺序
- Android实现Ad_hoc
- adb logcat 过滤打印信息
newRoomET 确定不是NULL?
原因我先我大致知道了,但有人能说清楚一下吗
所以findViewById() 如果不加前置的addroom话,默认会从activity中的layout中寻找R.id.addroom_et
, 而你要做的是AlertDialog中contentView的子view。
所以他找不到, 返回null
而你R.layout.addroom是inflate的,
所有要用这个控件就需要通过inflate后生成的view