【问题标题】:Progress View with UIView indicator带有 UIView 指示器的进度视图
【发布时间】:2014-09-22 15:07:32
【问题描述】:

大家好,我遇到了这个问题。我需要在图像中创建类似这样的行为。

我使用 UIProgressView 创建了一个 UIView xib(因为我需要重用此视图)用于“深橙色”填充,然后为带有 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];

【问题讨论】:

    标签: ios objective-c xcode uiview uiprogressview


    【解决方案1】:

    由于视图使用自动布局,您必须为布局约束设置动画,而不是框架。您可以通过创建约束的出口并更改其常量来实现。

    但在深橙色视图上不使用自动布局可能会更容易。在代码中构建并添加它。设置它的框架原点等于浅橙色视图,并设置它的宽度等于进度(0-1)*浅橙色宽度。

    【讨论】:

    • 哦,太好了,我不知道我可以摆脱约束!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-23
    • 2018-10-19
    • 1970-01-01
    • 2015-12-26
    • 2015-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多