我在网上搜索过,但没有找到明确的答案。我使用 panGestureRecognizer 在 x 轴上拖动滑块按钮,但如果超出滑块轨道,我不希望能够拖动。我已经设法做一些事情,但它并没有真正发挥应有的作用。这是我的代码
-(void) handleDrag:(UIPanGestureRecognizer*)panGestureRecognizer
{
if (panGestureRecognizer.state==UIGestureRecognizerStateBegan)
{
}
if (panGestureRecognizer.state==UIGestureRecognizerStateChanged)
{
CGPoint touchPoint=[panGestureRecognizer locationOfTouch:0 inView:self];
if (sliderButton.center.x > first.center.x-0.5f && sliderButton.center.x-0.5f < third.center.x && CGRectContainsPoint(sliderButton.frame, touchPoint) ) // if we are still in the slidertrack and the touch is on the sliderbutton
{
CGPoint newPoint=CGPointMake(touchPoint.x+0.5,sliderButton.center.y);
sliderButton.center=newPoint;
}
}
}
这是我的滑块
第一个按钮是“Thu”,第二个是“Fri”,第三个是“Sat”。我希望我的 sliderButton 只在这些边界内移动。
谢谢你。