如何使UISlider增加长度(视觉上)? IOS

时间:2013-12-13 08:29:56

标签: ios uislider

我正在尝试在运行时增加UISlider的长度,但它不起作用。 这就是我在做什么。

- (IBAction)lengthenADSR:(UIButton *)sender {

    CGRect aFrame = CGRectMake(870, 351, 200, 28);
    mainAttackSlider = [mainAttackSlider initWithFrame:aFrame];
    [mainAttackSlider removeFromSuperview];

    [self.view addSubview:mainAttackSlider];
    [mainAttackSlider setNeedsDisplay];
}

我做错了什么?或者是否无法在运行时更改UISlider长度? 谢谢。

1 个答案:

答案 0 :(得分:1)

我将你的代码推断为我认为你已经做过的事情,所以如果我做出错误的假设,我会道歉。这听起来你的视图已经有了一个滑块,你正在制作一个具有固定长度的新滑块,所以我不确定将新长度设置为什么。但是,假设每次调用它时,你的方法都会将长度增加10。它看起来像这样:

- (IBAction)lengthenADSR:(UIButton *)sender {
    [UIView animateWithDuration:0.5 delay:0 options:UIViewAnimationOptionCurveEaseIn animations:^{
        mainAttackSlider.frame = CGRectMake(mainAttackSlider.frame.origin.x, mainAttackSlider.frame.origin.y, mainAttackSlider.frame.size.width+10, mainAttackSlider.frame.size.height);
    }];
}

根据需要调整。下次,您应该考虑确保您的问题是明确的,以便您可以获得更准确的帮助。