Slider View

Slider在iPhone比較常見是用來調整螢幕的明暗度,或是在某些圖片編輯app內用來調整RGB的比例,我們使用一個簡單的範例來操控Slider。

簡單的範例最後要達到的結果如左圖,拖拉Slider可以觀察到數值隨著Slider的變化跟著改變。

















**Step 1.**建立一個SingleView的專案,專案的名稱為Slider View

**Step 2.**編輯MainStoryboard.storyboard

加入SliderLabel兩個元件,當中的元件屬性設定你可以隨自己喜好去做設定。

比較需要注意的是Slider的屬性設定;設定它的最大值、最小值以及預設值。

**Step 3.**編輯ViewController.h

定義UISliderUILabel兩個型態變數,setSliderValue:方法為Slider被拖拉時,會改變UILabel的數值。

1
2
3
4
5
6
7
8
9
10
@interface ViewController : UIViewController
{
UISlider *slider_;
UILabel *label_;
}
@property(strong, nonatomic)IBOutlet UISlider *slider;
@property(strong, nonatomic)IBOutlet UILabel *label;

-(IBAction)setSliderValue:(id)sender;
@end

**Step 4.**編輯ViewController.m

currentValue用來取得Slider的值;取得值的結果在放到NSString型態的變數value,最後將value的結果指定給UILabel

1
2
3
4
5
6
7
8
9
10
@synthesize slider = slider_, label = label_;

-(IBAction)setSliderValue:(id)sender
{
float currentValue;
currentValue = [self.slider value];

NSString *value = [[NSString alloc] initWithFormat:@"Value is %2.f", currentValue];
self.label.text = value;
}

在一開始UILabel是沒有數值的,只有當你拖拉Slider才會出現值,如果要讓一近到畫面時就要有初始值,可以複製setSliderValue:中的方法到viewDidLoad即可。

**Step 5.**最後建立IBOutletIBAction的關聯