我从布局创建一个按钮,它工作正常(我测试时在屏幕上显示)。当我为此Button
添加点击事件时,我总是收到NullPointerException
(您可以在下面的代码中看到):
Button b1;
int REQUEST_CODE =1;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
b1 = (Button) findViewById(R.id.web_button);
b1.setOnClickListener(new OnClickListener() { //ERROR THIS LINE
public void onClick(View arg0){}
});
setContentView(R.layout.intent);
}
答案 0 :(得分:3)
在使用setContentView
之前,您应先findViewById
- 否则它不知道在哪里搜索按钮。
使用此订单:
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.intent);
b1 = (Button) findViewById(R.id.web_button);
b1.setOnClickListener(new OnClickListener() { //ERROR THIS LINE
public void onClick(View arg0){
}
});
}
答案 1 :(得分:2)
在设置内容视图之前,您正在搜索Button
。你必须这样做:
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.intent);
b1 = (Button) findViewById(R.id.web_button);
b1.setOnClickListener(new OnClickListener() { //ERROR THIS LINE
public void onClick(View arg0){
}
});
}