将一个Button进行移位动画,移位到另外一个位置,移动之后发现,在Button现在所处的位置点击没有任何反应,而点击其移位前所在的位置,却能响应我的点击事件,请问各位,如何才能Button移位后的位置上响应我的点击事件,在线等,不胜感激。

解决方案 »

  1.   

    在移动后的button上面设置onclick事件
      

  2.   

    你的是点击事件吗,感觉有点想touch事件。象移动动画,移动后资源回收是很重要的。每次移动都记得回收,并重新初始化。
      

  3.   

    点击事件 , 直接设置OnClickListener()啊  
      

  4.   

    通过sdk目录下的工具,...\tools\hierarchyviewer.bat去查看一下移位后的布局有没有改变。个人感觉只是显示变了,但是布局没有改变。
      

  5.   

    确实只是显示变了,布局没有改变,我现在的处理方法是先移动Button到一个指定的位置,然后将这个Button去除,在新的位置重新生成一个和原来一样的Button。
      

  6.   

    在移动后的button上面设置onclick事件
      

  7.   

    这是正解。layout没有变,分发事件的时候还是按照它在布局中的坐标来计算是不是发给它的。
      

  8.   


    请问这个怎么解决呢?如果LinearLayout ll=new LinearLayout(this),然后把button放在ll进里面,然后在移动ll,这样可以吗?这样是不是ll又没有变化啦?真郁闷,不知道怎么解决
      

  9.   

    3.0以前android的动画只是重画在界面上,但是空间的事件仍然注册在初始的坐标点,解决方法如下:
    1、换3.0以上的。
    2、 把动画的setfillafter(false);,在移动完成后监听播放事件,cleanAnimation();setLayoutParams();
                                          
      

  10.   


     fromXDelta 属性为动画起始时 X坐标上的位置   
                toXDelta   属性为动画结束时 X坐标上的位置
                fromYDelta 属性为动画起始时 Y坐标上的位置
                toYDelta   属性为动画结束时 Y坐标上的位置
    这些个值怎么计算呢?
    而且那涉及到适配问题呢?我完全要崩溃了