ios 纵向的UISlider

大家都知道ios中的UISlider控件,也就是小滑块,它为用户提供了一种可见的做范围调整的方法,经常用在设置声音值和灵敏度控制等相关方面,用起来很简单,但有时候我们需要纵向的小滑块,网上有大牛说自己重写一个UISlider,我感觉那样挺费劲的,只要将其旋转不久行了吗,看代码:

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

//初始化显示区,高度一般设置为零,它会自动调整
    self.slider = [[UISlider alloc]initWithFrame:CGRectMake(0, 100, 200, 0)];

//设置最大值和最小值
    self.slider.minimumValue = 0;
    self.slider.maximumValue = 200;

//滑动时的监听事件
    [self.slider addTarget:self action:@selector(sliderAction) forControlEvents:UIControlEventValueChanged];

//滑动滑块时是等一次性滑动完后改变值还是不断进行改变
    [self.slider setContinuous:YES];
       //将其顺时针旋转90度,这下就变成纵向的了
    self.slider.transform = CGAffineTransformMakeRotation(M_PI_2);

  [self.view addSubview:self.slider];
}

-(void)sliderAction{
    float value = self.slider.value;
    NSLog(@"the value of slider is %f",value);
}

posted @ 2013-01-28 20:12  Forty_two  阅读(1290)  评论(0编辑  收藏  举报