其他分享
首页 > 其他分享> > IOS:UISlider滑动固定间隔,解决UISlider频繁回调造成硬件设备无法及时响应的问题

IOS:UISlider滑动固定间隔,解决UISlider频繁回调造成硬件设备无法及时响应的问题

作者:互联网

一般滑动UISlider改变一些数值,如果是软件上的一些效果,程序是能反映过来的。

如果是用来改变硬件设备的一些属性,slidervaluechangee频繁触发,可能造成硬件设备响应不过来的问题。

比如我们通过蓝牙发指令给硬件设备,如果slider滑动的过快,发送命令频率太高,这时候就会出现设备无响应的问题。

解决思路如下:

使用滑动固定数值的方式,例如slider的范围是0-1

但是我们把它分割成20个数值

/*设置slider固定间隔的数组,0.00--1.00,
     分为20份,那么数组要加的就是0.05,0.10,0.15,0.20,0.25,0.30……,
     
     */
    _mutArrValue=[[NSMutableArray alloc]init];
    for(int i=1;i<=20;i++)
    {
        [_mutArrValue addObject:@(i*0.05)];
        NSLog(@"数组的值是%f",i*0.05);
    }

-----------

 _playSlider.minimumValue=0;
 _playSlider.maximumValue=_mutArrValue.count-1;

----------

slider的max,min被设定为0-19,系统会自动的将slider均分。然后在数值变动方法里,每次数值数值改动,触发该方法时,判断一下两次的数值是否>=0.05,当然了,这个根据你自己定的间隔决定。整体思路就是这样。

 

标签:IOS,数值,0.05,slider,mutArrValue,滑动,UISlider
来源: https://www.cnblogs.com/kc1995/p/14228752.html