我创建了这个小程序来尝试学习按钮和文本视图。当试图使用onLongClick来设置文本时,我会关闭一个力。当我查看调试器时,我在第45行看到了一个nullpointerexception holdMeAnswer.setText(“Nope!”);.
我在nullpointer下面看到一大堆“类文件错误:源未找到”错误。我已经尝试将附加的源指向Java src.zip和android.jar文件,但似乎都没有解决任何问题。
代码是:
package com.PickSomeButtons;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.RadioButton;
import android.widget.TextView;
import android.widget.Button;
import android.view.View.OnLongClickListener;
public class PickSomeButtons extends Activity {
RadioButton myButton0;
RadioButton myButton1;
TextView myAnswer;
TextView holdMeAnswer;
Button longClickButton;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myButton0=(RadioButton)findViewById(R.id.radio0);
myButton1=(RadioButton)findViewById(R.id.radio1);
myAnswer=(TextView)findViewById(R.id.textView1);
longClickButton=(Button)findViewById(R.id.button1);
myButton0.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
myAnswer.setText("Me!");
}
});
myButton1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
myAnswer.setText("Not me!");
}
});
longClickButton.setOnLongClickListener(new Button.OnLongClickListener() {
public boolean onLongClick(View v) {
holdMeAnswer.setText("Nope!");
return true;
}
});
}
}
答案 0 :(得分:1)
在onCreate方法中,您初始化myAnswer但不是holdMeAnswer。因此holdMeAnswer为空。
您可以尝试在Preferences>下的Eclipse中启用更多警告。 Java>编译器>错误/警告。我认为可能会对未初始化的私人成员发出警告(除此之外,这些成员应该是私有的)。