gpt4 book ai didi

objective-c - TrackImage 上带有图像的 UISlider

转载 作者:行者123 更新时间:2023-12-02 22:29:59 27 4
gpt4 key购买 nike

我有设置了 setMinimumTrackImage 和 setMaximumTrackImage 的 UISLider。两个图像具有相同的分辨率。如果我移动 slider ...图像显示不正确。当我拖动 slider 控制拇指时,它们正在移动。我试着用

UIImage * sliderBarImage1 = [UIImage imageNamed:@"slider_b"];
UIImage * sliderBarImage2 = [UIImage imageNamed:@"slider_w"];

sliderBarImage1 = [sliderBarImage1 stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0];
sliderBarImage2 = [sliderBarImage2 stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0];

[self.slider setMinimumTrackImage:sliderBarImage1 forState:UIControlStateNormal];
[self.slider setMaximumTrackImage:sliderBarImage2 forState:UIControlStateNormal];

有或没有 stretchableImageWithLeftCapWidth 都不正确。当我旋转手机时,轨道上的图像会被错误地缩放,因此图像中的信息会发生偏移。类似于这篇文章中的图片:How to place image on UISlider? .当我移动 slider 时,图像开始移动并且颜色在最小和最大轨道上不重叠,导致效果不佳。

最佳答案

避免拉伸(stretch)图像变化

UIImage * sliderBarImage1 = [UIImage imageNamed:@"slider_b"];
UIImage * sliderBarImage2 = [UIImage imageNamed:@"slider_w"];

进入

UIImage * sliderBarImage1 = [[UIImage imageNamed:@"slider_b"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
UIImage * sliderBarImage2 = [[UIImage imageNamed:@"slider_w"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];

关于objective-c - TrackImage 上带有图像的 UISlider,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12437758/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com