我有一个父LinearLayout
,其中有一些ImageView
,现在我在父布局上设置了OnCLickListener
。如何让孩子ImageViews获得点击监听器?
这样的事情可以吗?:
parent.setOnCLickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(v == childImageViewA) {
//...........
}
//..........
}
});
答案 0 :(得分:2)
你可以这样做:
parent.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
ViewGroup parent = (ViewGroup) v;
for(int i = 0; i < parent.getChildCount(); i++) {
View child = parent.getChildAt(i);
if(child == childImageViewA) {
//Do something with child
}
}
}
});
答案 1 :(得分:1)
您可以在子视图中编写一个方法,比如handleClickEvent(),您可以在上面的@Bobbake4代码中的For循环中调用它。当然,您需要将其转换为Child View的类型,以便能够调用您编写的方法。
希望这有意义!!