我正在考虑制作一个滑块/操纵杆,但不是在一个圆圈中,而是在一条线上。所以我让图像只能在 X 轴上拖动,当它到达滑块停止的位置时,我这样做了:
if(slider.center.x <= 60) {
slider.center = CGPointMake(60, slider.center.y);
}
所以它不会大于 60 但我在想没有更好的方法吗?像做一个盒子并设置一些东西不把它拖到那个盒子外面?
谢谢!
我正在考虑制作一个滑块/操纵杆,但不是在一个圆圈中,而是在一条线上。所以我让图像只能在 X 轴上拖动,当它到达滑块停止的位置时,我这样做了:
if(slider.center.x <= 60) {
slider.center = CGPointMake(60, slider.center.y);
}
所以它不会大于 60 但我在想没有更好的方法吗?像做一个盒子并设置一些东西不把它拖到那个盒子外面?
谢谢!
I think this method is very good. As far as I know there is no wan to stop dragging in other ways than this.
However there is a control called UISlider
. This control does the functionality you would like to have.
您还可以使用 touchesBegan、touchesMoved 和 touchesEnded,然后在后面添加一个图像并检测触摸何时小于图像宽度的一半(左)或大于一半(右)