2010-11-21 33 views
2

我想要那個有助於在我的應用程序中解鎖iPhone的滑塊,但即時獲取該標準滑塊。請告訴我有什麼方法可以更改該標準滑塊或有任何代碼或UI吃出滑塊,幫助我們解開iPhone ...有助於解鎖iPhone的滑塊


那麼我怎麼才能使滑片,客戶的要求很高....我們才能把圖像放在「滑動解鎖」的標準滑塊滑塊...什麼

回答

7

簡短的回答是,你必須使自己的。

長時間的回答是,可以自定義UISlider以使其看起來完全像鎖定滑塊(這將會導致拒絕,所以如果您提交,使它看起來適度不同,即使蘋果可能會挑剔它並可能仍然拒絕)。

使用2個背景圖像設置UISlider,一個用於滑塊處於最小位置時,另一個用於滑塊處於最大位置時,另一個用於拇指圖像。

下面是一個示例設置

UIImage *minImage = [UIImage imageNamed:@"sliderback_min.png"]; 
UIImage *maxImage = [UIImage imageNamed:@"sliderback_max.png"]; 
UIImage *tumbImage= [UIImage imageNamed:@"slider_thumb.png"]; 

minImage=[minImage stretchableImageWithLeftCapWidth:25.0 topCapHeight:0.0]; 
maxImage=[maxImage stretchableImageWithLeftCapWidth:25.0 topCapHeight:0.0]; 

[lockScreenSlider setMinimumTrackImage:minImage forState:UIControlStateNormal]; 
[lockScreenSlider setMaximumTrackImage:maxImage forState:UIControlStateNormal]; 
[lockScreenSlider setThumbImage:tumbImage forState:UIControlStateNormal]; 

lockScreenSlider.minimumValue = 0.0; 
lockScreenSlider.maximumValue = 100.0; 
lockScreenSlider.continuous = YES; 
lockScreenSlider.value = 10.0; 

接着使用sliderTouchEnd委託方法動畫滑塊回落到最小值的動畫當觸摸已結束,但不完全解鎖。像這樣的:

- (IBAction) sliderTouchEnd:(id)sender { 
    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:0.3]; 
    lockScreenSlider.value = 10.0; 
    [UIView commitAnimations]; 
} 

你必須自己做,但這會讓你非常接近的鎖屏滑塊。

+0

太神奇了!非常感謝。 – nosuic 2011-06-12 18:08:09

0

如果你的意思是「滑動解鎖」滑塊,不,沒有辦法改變它。

+0

那麼我將如何得到那個滑塊,客戶端要求....我們可以把標準滑塊上的「幻燈片解鎖」滑塊...什麼說fabian789? – ManjotSingh 2010-11-21 12:31:55