Android:我想让孩子们获得OnClickListener,

时间:2011-10-27 03:12:24

标签: android

我有一个父LinearLayout,其中有一些ImageView,现在我在父布局上设置了OnCLickListener。如何让孩子ImageViews获得点击监听器?

这样的事情可以吗?:

parent.setOnCLickListener(new OnClickListener() {

     @Override
     public void onClick(View v) {
        if(v == childImageViewA) {
              //...........
        }
         //..........
     }
});

2 个答案:

答案 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的类型,以便能够调用您编写的方法。

希望这有意义!!