zoukankan      html  css  js  c++  java
  • (备忘)自定义viewgroup与点击分发事件

    public class ScoreButton extends ViewGroup

    在类中重写onTouchEvent方法

    @Override
    public boolean onTouchEvent(MotionEvent event) {

    switch (event.getAction()) {
    case MotionEvent.ACTION_DOWN:
    Log.i("aaa","action_down");
    setState(state.PRESSED);
    break;
    case MotionEvent.ACTION_UP:
    Log.i("aaa","action_up");
    setState(state.RUNNING);
    mMoveCircle.startAnimation(animation);
    break;
    }

    发现ACTION_UP事件从来不执行

    解决办法:在调用此控件的MainActivity中拿到此控件的对象,并且

    给它设置一个onclicklistener(传入null也可以)

    scoreButton.setOnClickListener(null);

    这样就可以监听到ACTION_UP事件了(以及ACTION_MOVE等)

    ======================================

    在相对布局或者帧布局文件中,通常写在下面的控件后渲染,所以显示在最顶层

    但是就算是写到上面导致被遮住了,只要遮住它的控件不拦截点击事件,它仍能响应点击事件(虽然看不到)

  • 相关阅读:
    JDBC数据库连接
    JDBC驱动程序类型
    JDBC简单示例代码
    JDBC SQL语法
    JDBC是什么?
    JDBC快速入门教程
    JUnit4参数化测试实例
    JUnit套件测试实例
    JUnit4时间(超时)测试实例
    JUnit4忽略(Ignore)测试实例
  • 原文地址:https://www.cnblogs.com/BlogCommunicator/p/4931364.html
Copyright © 2011-2022 走看看