2012-03-16 67 views
3

我有一個滑塊。最小值爲0秒,最大值爲3分鐘(或180秒)。我想將滑塊值增加10秒。我怎樣才能得到這個?請幫忙。要將滑塊值增加10

回答

6

假設你想滑塊以增加了在10步/下...

胡克滑塊的值IB改變事件(或代碼UIControlEventValueChanged)的方法,在您的視圖控制器,爲:

- (IBAction)sliderValueChanged:(id)sender { 
    int value = (int)[self.slider value]; 
    int stepSize = 10; 
    value = (value - value % stepSize); 
    // Set the new value. 
    self.sliderValue = value; 
} 

self.sliderValue是一個單獨的整數屬性來追蹤值(而不是改變所述滑塊的使所述基礎值UI問題)

+0

int stepSize = 10.0f;'是無意義的,'int stepSize = 10;'就足夠了。 – dreamlax 2012-03-16 10:20:43

+0

斑點先生:) – 2012-03-16 10:22:03

+0

另外,我不能測試,但會'self.sliderValue =值;'觸發'sliderValueChanged:'?如果是這樣,這將導致堆棧溢出。 – dreamlax 2012-03-16 10:23:03

1
[mySlider setValue:([mySlider value]+10) animated:YES]; 

如果您不希望滑塊動畫到新值,則將「動畫」設置爲NO。

0

如果喲你希望滑塊的增量僅爲10,然後讓滑塊從0到18,並且每當你使用或顯示該值時,乘以10.