Android Button java.lang.NullPointerException

时间:2013-11-27 22:02:16

标签: android button nullpointerexception

有人能告诉我问题在哪里吗?

Button conn_btn;
Button send_btn;
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    conn_btn = (Button)findViewById(R.id.conn_btn);
    send_btn = (Button) findViewById(R.id.send_btn);
    ...
}


public void changeConnectionStatus(Boolean status, Context context) {
    connected = status;     
    if(status){
        conn_btn.setText(context.getString(R.string.disconnect));
        send_btn.setVisibility(View.GONE);
    }else{
        conn_btn.setText(context.getString(R.string.connect));
        send_btn.setVisibility(View.VISIBLE);
    }
}

调用changeConnectionStatus(...)时,我一直收到“java.lang.NullPointerException”错误!

2 个答案:

答案 0 :(得分:0)

我试图从AsyncTask“doInBackGround()”更新按钮......所以,解决方法是从“onPostExecute()”更新它。我也在findViewById之前调用changeConnectionStatus()(感谢user2707175)。

答案 1 :(得分:-1)

您没有提供太多信息。请加入Logcat。

我想到的两个最可能的原因: - 在onCreate方法findViewById中找不到具有给定ID的按钮 - 您有时在changeConnectionStatus

之前执行findViewById