【问题标题】:How to create a swipe button like this?如何创建这样的滑动按钮?
【发布时间】:2020-12-06 22:17:27
【问题描述】:

我想创建一个双面滑动按钮,在到达终点时提供触觉反馈。图片已附上。

https://i.stack.imgur.com/eIECf.png

【问题讨论】:

    标签: java android xml user-interface layout


    【解决方案1】:

    这不是一个简单答案的问题,但我会尝试为您提供有关如何实施这样的事情的总体方向:

    您需要自己处理按钮上的触摸事件。 类似:

      
    
              button.setOnTouchListener(new OnTouchListener() 
                {
        
                    @Override
                    public boolean onTouch(View arg0, MotionEvent arg1) 
                    {
                        switch(event.getAction()) {
                            case MotionEvent.ACTION_DOWN:
                                 // touch down code
                                 break;
        
                            case MotionEvent.ACTION_MOVE:
                                 // touch move code
                                 break;
        
                            case MotionEvent.ACTION_UP:   
                                // touch up code
                                break;
                        }
                        return false;
                    }
                });
    
    

    在onTouch中,你需要做两件事:

    1. 根据用户手指的动作将按钮移动到适当的位置。 为此,您可能应该存储 ACTION_DOWN 的位置,然后在 ACTION_MOVE 中计算相对移动并移动您的按钮以匹配它。 如果您希望您的按钮仅沿某个轴移动,您需要自己计算该轴上的适当位置。

    2. 在 ACTION_UP 中,检查按钮的位置,如果它足够靠近您希望滑动结束的位置,则执行操作

    【讨论】:

      猜你喜欢
      • 2011-01-30
      • 2015-09-18
      • 1970-01-01
      • 1970-01-01
      • 2011-10-20
      • 1970-01-01
      • 2012-09-15
      • 1970-01-01
      • 2013-01-01
      相关资源
      最近更新 更多