在进度视图顶部绘制图像

Posted

技术标签:

【中文标题】在进度视图顶部绘制图像【英文标题】:Draw an image on-top of Progress View 【发布时间】:2013-09-24 09:02:57 【问题描述】:

我正在尝试创建一个自定义 UIProgressView,我希望它看起来像这样:

但我正在尝试的一切都不起作用(ios7)。我希望它支持 iOS5+ 以及 iOS7。最后我做了一些事情,我几乎到了,但我几乎没有问题。

这就是现在的样子:

如何将图像放在进度视图的后面,另外,如何更改进度条的颜色以及如何强制它保持在图像的边缘?

如何更改进度视图的框架?

这是我的代码:

- (void)createProgressView

    //   NOT CHANGING THE FRAME
    self.packageUtilizingCellProgressView.frame = CGRectMake(105, 20, 91, 14);
    self.packageUtilizingCellProgressView.progressViewStyle = UIProgressViewStyleBar;

    //   CHANGING THE FRAME
    [[UIProgressView appearance] setFrame:CGRectMake(105, 20, 91, 14)];

我还创建了一个名为 MYProgressView 的 UIProgressView 子类,并在 drawRect 中添加了这些行:

- (void)drawRect:(CGRect)rect

    UIImageView *background = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"progress_view_transparent_background.png"]];
    [background.image drawInRect:rect];
    [self bringSubviewToFront:background];

请告诉我我做错了什么以及如何以正确的方式做?

提前致谢!

【问题讨论】:

检查这个:- cocoacontrols.com/search?utf8=%E2%9C%93&q=UIProgressView 【参考方案1】:

一种解决方案是使用ImageProgressBar 的自定义进度视图。 创建您的自定义进度条并在其顶部添加 UILabel。

支持iOS5+和iOS7

【讨论】:

以上是关于在进度视图顶部绘制图像的主要内容,如果未能解决你的问题,请参考以下文章

从绘制在图像上的文本中删除顶部和底部填充

如何根据鼠标移动在 html 页面顶部绘制图像的一部分? (有或没有画布)

将图像插入 QGridLayout 并在 PyQt5 中的图像顶部绘制

使用包装内容可绘制图像获取图像视图位置

viewForHeaderInSection 绘制背景但仅当视图位于屏幕顶部时

Android图像视图顶部裁剪