加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 为什么UIProgressview进度条不可调整大小?

发布时间:2020-12-14 17:15:45 所属栏目:百科 来源:网络整理
导读:来自Bavarious’关于 UIProgressViews here:的问题 我尝试实现Dave DeLong所说的内容,并且我按照他在示例中显示的方式完成了所有操作,但是当我运行程序时,如果我尝试更改进度值,则进度条会变成拉伸图像.然而,轨道图像完美地调整并沿着轨道重复.出于某种原因,
来自Bavarious’关于 UIProgressViews here:的问题

我尝试实现Dave DeLong所说的内容,并且我按照他在示例中显示的方式完成了所有操作,但是当我运行程序时,如果我尝试更改进度值,则进度条会变成拉伸图像.然而,轨道图像完美地调整并沿着轨道重复.出于某种原因,进度不是沿着进度条进行的.

UIImage * load = [[UIImage imagedNamed:@"load.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0,1,1)];
UIImage * track = [[UIImage imageNamed:@"track.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0,1)]; 
[progressbar progressImage:load];
[progressbar trackImage:track];
[progressbar setProgress:0.5];

我尝试将我的图像变量从进度图像切换到轨迹图像,以查看是否可能是不可调整大小的图像(它不应该是因为它们是完全相同的图像,只是不同的颜色).除非我这样做,否则轨迹图像再次完美地调整大小并且进度图像是拉伸的图像.有谁知道为什么会这样?

解决方法

您可调整大小的上限可能不应该是{0,1}.在您的情况下,它们看起来应该是{0,0}或UIEdgeInsetsZero.

我剪掉了小红色和蓝色方块:

?

…然后将它们扔进UIProgressView:

UIImage *red = [[UIImage imageNamed:@"red"] resizableImageWithCapInsets:UIEdgeInsetsZero];
UIImage *blue = [[UIImage imageNamed:@"blue"] resizableImageWithCapInsets:UIEdgeInsetsZero];

[pv setTrackImage:blue];
[pv setProgressImage:red];

当进度视图放在UI上,进度为0.5时,我得到了这个:

在我看来很好.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读