嗨,大家好我坚持这个问题。我需要在图像中创建这样的行为。
我创建了一个UIView xib(因为我需要重用这个视图)和UIProgressView用于“深橙色”#填充然后为其中的UILabel创建一个UIView,但我无法使用setFrame移动它,所以我认为子类化UISlider会更容易。
您怎么看?
这是不起作用的代码,.xib使用AutoLayout,现在我正在使用Xcode 6.
ScoresView *score = [[[NSBundle mainBundle] loadNibNamed:@"scoresView" owner:self options:nil] objectAtIndex:0];
[score.markView setFrame:CGRectMake(score.markView.frame.origin.x + offset, score.markView.frame.origin.y, score.markView.frame.size.width, score.markView.frame.size.height)];
[score.progressView setProgress:0.5];
[score setFrame:viewSize];
[self.scoreScrollView addSubview:score];
答案 0 :(得分:1)
由于视图使用自动布局,因此必须为布局约束设置动画,而不是框架。您可以通过创建约束的出口并更改其常量来实现。
但是在深橙色视图上不使用自动布局可能更容易。在代码中构建并添加它。将其原点设置为等于浅橙色视图,并将其宽度设置为等于进度(0-1)*浅橙色宽度。