我试图偏移UISlider的最小和最大值图像的x / y位置。 目前,我正在升级UISlider并设置最大值图像:
[self setMaximumValueImage:[UIImage imageNamed:@"circle_with_plus"]];
但是,我需要这个图像更接近实际的UISlider,并且几乎无法控制该项目的可视资产。我尝试过使用
- (CGRect)maximumValueImageRectForBounds:(CGRect)bounds
但是,我是我的最小值/最大值图像可能会动态改变大小,因此我不确定如何在这种情况下正确实现它。是否有不同的方式来移动资产? 感谢
答案 0 :(得分:4)
不,没有其他方法可以重新定位最小或最大值图像。每次滑块布置其子视图时都会调用maximumValueImageRectForBounds:
,并且每当您更改maximumValueImage
时都会布置子视图,因此只需执行以下操作:
@implementation MyCustomSlider
- (CGRect)maximumValueImageRectForBounds:(CGRect)bounds {
CGRect r = [super maximumValueImageRectForBounds:bounds];
r.origin.x -= 3;
return r;
}
@end