如何创建这样的滑动按钮?
Posted
技术标签:
【中文标题】如何创建这样的滑动按钮?【英文标题】:How to create a swipe button like this? 【发布时间】:2020-12-06 22:17:27 【问题描述】:我想创建一个双面滑动按钮,在到达终点时提供触觉反馈。图片已附上。
https://i.stack.imgur.com/eIECf.png
【问题讨论】:
【参考方案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中,你需要做两件事:
根据用户手指的动作将按钮移动到适当的位置。 为此,您可能应该存储 ACTION_DOWN 的位置,然后在 ACTION_MOVE 中计算相对移动并移动您的按钮以匹配它。 如果您希望您的按钮仅沿某个轴移动,您需要自己计算该轴上的适当位置。
在 ACTION_UP 中,检查按钮的位置,如果它足够靠近您希望滑动结束的位置,则执行操作
【讨论】:
以上是关于如何创建这样的滑动按钮?的主要内容,如果未能解决你的问题,请参考以下文章
如何在滑动手势识别器函数中找到 UIButton 元素的父元素以构造对象?
如何使用现有 UIPageViewController 的按钮以编程方式滑动视图