来自 Bavarious 关于 UIProgressViews here: 的问题
我尝试实现 Dave DeLong 所说的内容,并完全按照他在他的示例中展示的方式进行操作,但是当我运行该程序时,如果我尝试更改进度值,我的进度条会变成拉伸(stretch)图像。然而,轨道图像会完美调整大小并沿轨道重复。出于某种原因,进度并没有沿着进度条进行。
UIImage * load = [[UIImage imagedNamed:@"load.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 1, 0, 1)];
UIImage * track = [[UIImage imageNamed:@"track.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 1, 0, 1)];
[progressbar progressImage:load];
[progressbar trackImage:track];
[progressbar setProgress:0.5];
我尝试将我的图像变量从进度图像切换到轨道图像,看看是否是无法调整大小的图像(不应该是因为它们是完全相同的图像,只是颜色不同) .除了我这样做的时候,轨道图像再次完美调整大小,而进度图像是拉伸(stretch)的图像。有谁知道为什么会这样?
最佳答案
您的可调整大小的大写字母可能不应该是 {0,1,0,1}
。在您的情况下,它们看起来应该是 {0,0,0,0}
或 UIEdgeInsetsZero
。
我剪掉了红色和蓝色的小方 block :
...然后将它们放入UIProgressView
:
UIImage *red = [[UIImage imageNamed:@"red"] resizableImageWithCapInsets:UIEdgeInsetsZero];
UIImage *blue = [[UIImage imageNamed:@"blue"] resizableImageWithCapInsets:UIEdgeInsetsZero];
[pv setTrackImage:blue];
[pv setProgressImage:red];
当进度 View 以 progress
为 0.5 放置在 UI 上时,我得到了这个:
我觉得不错。
关于objective-c - 为什么 UIProgressview 进度条不能调整大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10738361/