Android:运行时OnClickListener不起作用
我正在为使用Eclipse和Android SDK的Android设备开发应用程序; 我想用相同的OnClickListener添加一些ImageButtons(在运行时)。问题在于OnClickListener仅适用于第一个添加的按钮。 对于所有下一个按钮,onClick事件根本不会触发。Android:运行时OnClickListener不起作用
有人已经遇到(并解决了)这个问题吗?
public boolean onScroll(MotionEvent arg0, MotionEvent arg1, float arg2, float arg3) {
ImageButton myButton= new ImageButton(this);
myButton.setMaxHeight(140);
myButton.setMaxWidth(140);
myButton.setPadding(0, 0, 0, 0);
myButton.setAdjustViewBounds(true);
myButton.setImageResource(resId);
myButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
myRelativeLayout.addView(myButton, 0);
}
你总是将在第0位置的按钮。
myRelativeLayout.addView(myButton, 0);
所以,你只需要创建新的按钮,并将其添加为“第一个按钮”,这可能是为什么你只看到工作。您之前创建的按钮会丢失。
我试图添加按钮在不同的位置(使用全局计数器),但不去:运行时的结果是相同的。 – gldm 2012-03-08 14:19:56
你如何测试OnClick不会触发? – 2012-03-10 10:54:55
添加视图后,设置的点击收听这样
final int count = myRelativeLayout.getChildCount();
for (int i = 0; i < count; i++) {
View child = myRelativeLayout.getChildAt(i);
child.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
}
});
嗨gldm,你是否与我的答案一起工作它对我有效。如果你需要,我可以把详细的代码 – almuneef 2012-03-09 05:07:04
myButton.setFocusable(假)......会发生什么? – 2012-03-08 11:47:00
你为零零索引始终添加视图? – viplezer 2012-03-08 11:47:40
我只看到1个按钮。你的日志中有什么错误? – jmishra 2012-03-08 11:48:05