如何使用UISlider和如何设置一个特定值滑块?(how to use the UISlider

2019-09-20 01:10发布

我使用的是UIslider第一次。 首先,我想知道如何骑上滑块当前位置的值,如果值的范围为0〜10:

第二,我想我的滑块只设置5个不同的值。 样1,2,3,4,5

滑块不应该设置标记的值之间

Answer 1:

我跟着这个教程矿,这是非常有帮助的有变量,你可以在代码中设置诸如最大数,有多少每次滑块增加。 链接: http://www.xprogress.com/post-35-uislider-tutorial-example-how-to-use-slider-in-iphone-sdk-xcode/



Answer 2:

第一个u盘textfiled并添加此功能为代码

-(IBAction)changeSlider:(id)sender 
{
    text_field .text= [[NSString alloc] initWithFormat:@" Value %d ", (int)slider.value];
}


Answer 3:

在这种情况下,我设置滑块的XCode有值:0-3。 但滑块值上浮:0.000 - 3.000。

// **** Cylinder Volume Slider ****

- (NSInteger) normalizeValueCylinderVolumeSlider:(float) value
{
NSInteger normalizedValue = 0;

if (value>1.5)
{
    if (value>2.5)
        normalizedValue = 3;
    else
        normalizedValue = 2;
}
else if (value>0.5)
    normalizedValue = 1;

return normalizedValue;

}

- (IBAction)valueChangedCylinderVolumeSlider:(UISlider *)sender
{
float value = [sender value];
NSInteger normalizedValue;

// Step 1:

normalizedValue = [self normalizeValueCylinderVolumeSlider:value];

// Step 2:

if (normalizedValue>value)
{
    if ((normalizedValue-value)<0.3)
        sender.value = normalizedValue;
}
else if ((value-normalizedValue)<0.3)
    sender.value = normalizedValue;

}

- (IBAction)touchUpInsideCylinderVolumeSlider:(UISlider *)sender
{
float normalizedValue = 0;

normalizedValue = [self normalizeValueCylinderVolumeSlider:[sender value]];

sender.value = normalizedValue;

}

- (IBAction)touchUpOutsideCylinderVolumeSlider:(UISlider *)sender
{
float normalizedValue = 0;

normalizedValue = [self normalizeValueCylinderVolumeSlider:[sender value]];

sender.value = normalizedValue;

}


上的valueChanged动作,(步骤1)I值设置为刚性值:0,1,2,3,和(步骤2)I粘滑块到刚性值,如果它从刚性值接近0.3。

上touchUpInside&touchUpOutside我重复“步骤1”的代码从的valueChanged操作来修复该滑块值的情况下,该棒范围外的拖动动作结束(“步骤2”)。


最好是把所有的代码在一个子类滑块。 但是,这是iOS开发我唯一的第一周/尝试。



文章来源: how to use the UISlider and how to set the slider on a particular values?