【问题标题】:customize progressview / UISlider in ios在ios中自定义progressview / UISlider
【发布时间】:2014-08-20 11:14:54
【问题描述】:

我想像图像一样显示进度(除了屏幕颜色的黑色背景)。我为此使用进度视图。在这里用户没有机会手动更改进度。

请帮帮我。





【问题讨论】:

  • 您可以尝试设置UIProgressViewtrackImageprogressImage。但我想如果进度低,那个小圆圈可能是个问题。因此,编写自己的 progressView 来执行此操作可能会更容易。或者尝试自定义带有旋钮的UISlider 并将userInteractionEnabled 设置为NO
  • @robert 我尝试使用 trackimage 和 progressImage。但这并没有反映出来。 UISlider 也不适用于此。
  • 好的 - 自 iOS7 以来,这似乎不再起作用了......所以你可以选择做你自己的类,或者子类 UIProgressView 来正确设置图像和框架,就像这里提到的那样:@ 987654321@
  • 添加了有问题的答案。

标签: ios uiprogressview


【解决方案1】:

这可能对某人有所帮助。我已经用 UISlider 而不是 UIProgressView 实现了这种行为。 UISlider 解决了这个问题。

UIImage *minImage = [[UIImage imageNamed:@"slider_minimum.png"]
    resizableImageWithCapInsets:UIEdgeInsetsMake(0, 5, 0, 0)];
UIImage *maxImage = [[UIImage imageNamed:@"slider_maximum.png"]
    resizableImageWithCapInsets:UIEdgeInsetsMake(0, 5, 0, 0)];
UIImage *thumbImage = [UIImage imageNamed:@"thumb.png"];

[self.uisliderObj setMaximumTrackImage:maxImage
    forState:UIControlStateNormal];
[self.uisliderObj setMinimumTrackImage:minImage
    forState:UIControlStateNormal];
[self.uisliderObj setThumbImage:thumbImage
    forState:UIControlStateNormal];

来源来自link

【讨论】:

    【解决方案2】:

    您会在 WWW.COCOACONTROLS.COM 上找到很多简单的代码。你可以检查一下。

    如果你想自己定制你也可以继承 UIPROGRESSBAR 类

    并更改 UIProgressView 的 trackImage 和 progressImage。

    【讨论】:

    • 轨道和进度图像可以轻松设置,无需通过 UIAppearance 或直接从视图控制器进行子类化。
    • 那是真的.. 还有更多的属性可以设置,而不是每次都写。所以我建议子类化以使其成为一个通用类别。取决于开发人员的观点如何编写和制作什么。
    • 是的,你可以创建一个子类,但是你所说的“你必须子类”是不准确的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-19
    • 1970-01-01
    相关资源
    最近更新 更多