无法获得点击听众2 [英] cant get 2 on click listeners toghether
问题描述
嗨那里!
Im net to android programming很抱歉,如果这是noobish,但无法在任何地方找到一个好的例子。我使用点击监听器在同一屏幕上有2个图像按钮。我一直在标记上出现括号错误和语法错误,而AnnotationName则会出现错误。
Hi there!
Im net to android programming so sorry if this is noobish, but cant find a good example anywhere. I have 2 image button on the same screen using a on click listener. I keep getting bracket errors and Syntax error on tokens, AnnotationName expected instead errors.
startButton1.setOnClickListener(new OnClickListener() {
startButton2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(currentRun == 0){
startButton1.setText(hitButtonText);
startButton1Parent.setBackgroundResource(R.drawable.pump_red);
startButton2.setText(hitButtonText);
startButton2Parent.setBackgroundResource(R.drawable.pump_red);
new TimerClass().execute();
}else{
if(allowHit){
isHit = true;
}
}
}
});
}
任何想法?
谢谢你
any ideas?
thank you
推荐答案
你可以为每个按钮定义事件。
另一种方式,你可以做像这样:
You can define event for each button.
Another way, you can do like this:
private OnClickListener mListener = new OnClickListener() {
@Override
public void onClick(View v) {
Button btn = (Button)v;
// if btn is startButton1
if (btn.getId() == R.id.startButton1) {
// do something
} else (btn.getId() == R.id.startButton2) {
// do something
}
}
};
startButton1.setOnClickListener(mListener);
startButton2.setOnClickListener(mListener);
new OnClickListener() {
startButton2.setOnClickListener(new OnClickListener() {
// some code
}
}
这将永远无法工作。
当你声明这样一个OnClickListener时,你声明一个匿名类。那个是定义的。如果没有可直接访问的方法onClick(查看v),动作不会发生。
试试这个:
THAT will never work.
When you declare such a OnClickListener, you declare an anonymous class. That one is defined. If there is no directly accessable method onClick(View v), the action will not happen.
Try this:
startButton1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// fancy code for button1
}
});
startButton2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// fancy code for button2
}
});
这篇关于无法获得点击听众2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!