iOS7でいろいろなパーツのデザインが変わったみたい。今日はスライダーをつかったiPhoneアプリのサンプルを作ってためしてみる。
動作イメージ
XcodeからiOS7 iPhone Simulatorで動かすとこんな感じになります。
サンプルコード
#import “ViewController.h”
@interface ViewController ()
@property (strong, nonatomic) UISlider *slider;
@property (strong, nonatomic) UIView *mark;
@end
@implementation ViewController
– (void)viewDidLoad
{
[super viewDidLoad];
self.mark.center = CGPointMake(160, 160);
self.slider.value = 5;
}
– (UISlider*)slider
{
if (!_slider) {
_slider = [[UISlider alloc] initWithFrame:CGRectMake(30, 300, 260, 20)];
_slider.maximumValue = 10;
[self.view addSubview:_slider];
[_slider addTarget:self action:@selector(updateSlider:) forControlEvents:UIControlEventValueChanged];
}
return _slider;
}
– (UIView*)mark
{
if (!_mark) {
_mark = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 80, 80)];
_mark.backgroundColor = [UIColor greenColor];
_mark.layer.shadowColor = [UIColor blackColor].CGColor;
_mark.layer.shadowOffset = CGSizeMake(2, 2);
_mark.layer.shadowOpacity = 0.8;
_mark.layer.shadowRadius = 2;
[self.view addSubview:_mark];
}
return _mark;
}
– (void)updateSlider:(UISlider*)sender
{
CGPoint center = self.mark.center;
self.mark.frame = CGRectMake(0, 0, 16 * sender.value, 16 * sender.value);
self.mark.center = center;
}
– (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end