【问题标题】:How to create custom progress View?如何创建自定义进度视图?
【发布时间】:2010-11-10 13:06:58
【问题描述】:

在 iphone 中 UIProgressView 高度是固定的,我需要为高度 40(可变高度)创建 UIProgressView,如何在 drawRect 方法中编写我的自定义代码?我是 Quartz 的新手,可以绘制任何可用的样本。

提前致谢。

【问题讨论】:

标签: iphone cocoa-touch quartz-graphics


【解决方案1】:

实际上,您可能不需要子类化drawRect:

大概您的进度视图的图像是“可拉伸的”(即它们具有固定大小的左右两端,中间部分可以拉伸)?您可以通过加载UIImage 创建可拉伸图像,调用stretchableImageWithLeftCapWidth:topCapHeight: 以获取可以分配给UIImageView 的图像。然后,当您调整UIImageView 的大小时,图像会自动正确重绘——在图像视图的左右端绘制左右“大写”,中间部分被拉伸以填充中间。

您的进度条变成了一个视图,其中包含两个 UIImageViews 作为子项:一个用于背景,一个用于填充进度条。巧妙地使用autoresizingMask,您应该只需要更改进度条填充的框架即可更新显示。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-24
    • 2012-11-18
    相关资源
    最近更新 更多