你好,你们帮助我们请告诉你我是Android和Java的新手。 我已经写了一个OnClickHandler并且它编译并启动但是如果我按下一个按钮就会停止。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
int[] buttons = {R.id.button1, R.id.button2, R.id.button3, R.id.button4, R.id.button5, R.id.button6, R.id.button7, R.id.button8, R.id.button9};
for (int i = 0; i < buttons.length; i++) {
Button buttonNum = (Button) this.findViewById(buttons[i]);
buttonNum.setOnClickListener(new onCklickHandler());
}
}
class onCklickHandler implements View.OnClickListener {
public void onClick(View v) {
if ("On" == button.getText()){
button.setText("Off");
}
else {
button.setText("On");
}
v.playSoundEffect(SoundEffectConstants.CLICK);
}
}
有人可以帮忙吗?
答案 0 :(得分:0)
我的失败是调用Button.setText没有ID,所以我必须首先找到正确的Id
Button button = (Button) v.findViewById(v.getId());
多数民众赞成......
非常感谢您发布的许多帖子和答案。 Handler现在是:
class onClickHandler implements View.OnClickListener {
public void onClick(View v) {
Button button = (Button) v.findViewById(v.getId());
if ("On" == button.getText()){
button.setText("Off");
}
else {
button.setText("On");
}
v.playSoundEffect(SoundEffectConstants.CLICK);
}
}
答案 1 :(得分:-1)
我认为按钮变量未定义