スライダーの基本的使い方をマスター:UISlider

スライダーとは

バーのつまみを左右に動かして値を変化させるものです。
iPodのボリュームや、曲の進行度を表すバーを思い浮かべると分かりやすいですね。
slider

スライダーの設置と使い方

まず、xibファイルにSliderをドラッグ&ドロップで設置します。
slider01

次に、アトリビュートインスペクタで基本設定をします。

  • Minimum(最小値)、Maximum(最大値)、Current(現在値)
  • Min Track Tint(バー左側の色)、Max Track Tint(バー右側の色)、Thumnb Tint(現在値マークの色)

slider02

例えば、下のように設定してみます。
slider03

すると、このようなバーになります。
slider04

では、xibファイルでラベルも下図のように配置しておきます。
このラベルにスライダーの現在値を表示するようにします。
slider05

 

では、ヘッダーファイル(.h)に定義します。

#import <UIKit/UIKit.h>

@interface TestViewController : UIViewController
{
    UISlider *sl;
    UILabel *lb;
}

@property (nonatomic, retain) IBOutlet UISlider *sl;
@property (nonatomic, retain) IBOutlet UILabel *lb;

- (IBAction)SliderChanged:(id)sender;

@end

では、ソースファイル(.m)に追記します。

#import "TestViewController.h"

@interface TestViewController ()

@end

@implementation TestViewController

@synthesize sl, lb;

- (void)dealloc {
    [sl release];
    [lb release];
    [super dealloc];
}

- (IBAction)SliderChanged:(id)sender {
    
    NSLog(@"スライダーの値が変わりました");
    
    //スライダーの現在値を取得
    float v = 0;
    v = sl.value;
    
    //ラベルに現在値を表示
    lb.text = [NSString stringWithFormat:@"%2.f",v];
}

- (void)viewDidLoad

SliderChangedは、スライダーの値が変わったとき、
すなわちスライダーを動かしたときに呼ばれるメソッドです。

スライダー変数名.value』・・・スライダーの現在値を取得

また、普段「%f」とするところを「%.1f」としていますが、
これは少数第1位まで表示ということです。

整数なら「%.0f」、少数第2位なら「%.2f」とします。

 

最後に関連付けをします。
IBAction:スライダー「SliderChanged」でイベントは「Value Changed」
slider06

IBOutletは、ラベル「lb」
slider07

IBOutletは、スライダー「sc」
slider08

 
シミュレータで実行し、スライダーを動かします。
slider09

コメントを残す

サブコンテンツ

このページの先頭へ