怎么给LinearLayout 增加onClickListener事件?
这样的我已经试过,根本不行:
首先:this.setClickable(true);
然后:setOnClickListener又懂得或者试验过的大哥行行好吧!
我是在LinearLayout 放了好几个控件,想捕获LinearLayout 内的onClick事件!

解决方案 »

  1.   

    你是想给整个LinearLayout 添加事件啊 还是给LinearLayout 内的控件添加事件啊如果是控件的话,
    .setOnClickListener(new OnClickListener() {
    public boolean onClick(View v) {

    }
    });
    如果是前者的话, 呐 我就不着了、、、
      

  2.   

    还真没想过。。可以复写OnTouchEvent()这个方法实现类似的功能吧。。楼上的人说了句废话。
      

  3.   

    this是指什么啊?
    如果不是重载View类,那就是Activity了,这个和LinearLayout无关啊
    应该是获取LinearLayout对象然后设置其setOnClickListener()吧。
      

  4.   

    获取对象再设置事件,那就是LinearLayout内部控件 的事件,要是这样的话就简单很多了。就是不知道LZ是要LinearLayout整个的事件还是内部的控件呢??要是内部的控件,那还真没试过呢
    等待楼下解决
      

  5.   

    不管是内部控件还是布局本身,应该都不难吧,只要有id,就可以获取相应的View对象,布局和控件都属于View的子类。
      

  6.   

    我的测试成功了阿
            LinearLayout ll = (LinearLayout)findViewById(R.id.mainLayout);
            ll.setOnClickListener(new View.OnClickListener() {            public void onClick(View v) {
                    // TODO Auto-generated method stub
                    int i = 0;
                }
            });可以跑到int i
      

  7.   

    楼主把相关的代码贴出来看看吧 ,不知道你LinearLayout放得是什么控件。
      

  8.   

    在xml中给linearlayout添加id  android:id="@+id/layout1"
    在代码中ViewGroup vg=(ViewGroup)findViewById(R.id.layout1);
    然后给vg绑定listener监控
      

  9.   

    你的包估计导错了,你的OnClickListener不是View的,呵呵...看看你的import部分
      

  10.   

    如果你的linearlayout中的孩子们都监听了click事件了,linearlayout是拿不到事件的。在Android系统的中,硬件触发的事件最开始是Activity拿到的,然后它向里面的View一级级的dispatch,所以最里层的view最后拿到了事件,而它又没有孩子了,它就开始处理了(也就是响应事件)。在孩子的事件处理函数中,如果返回了false,它的父容器还是能再次拿到了事件的。如果返回了true,也就是告诉它的父容器,这事我管了,你就别过问了。linearlayout的孩子们估计都有自己的Click事件处理函数了吧?Click事件其实一种封装的事件,而不是我说的“硬件触发的事件”,“硬件触发的事件”指的是MouseUp, MouseDown,MouseMove和MouseCancel。View类中对于Click事件默认都是采取返回了false。所以你的linearlayout是拿不到事件的,因为它的孩子已经处理过了。但是有一种解决方案:你可以重写linearlayout的onInterceptTouchEvent()方法,它会在事件传给孩子之前被调用。
      

  11.   

    ll.setFocusable(true);
    ll.setFocusableInTouchMode(true);
    给你要添加事件的view加上这两句,获取焦点试试
      

  12.   

    在选OnClickListener时类型没有选对,OnClickListener有View和DialogInterface这两种类型,选择时选View就可以了