Ios 调整UI按钮';图像视图属性

Ios 调整UI按钮';图像视图属性,ios,Ios,我很难计算我可以调整UIButton的imageView属性多少。文件中说: 尽管此属性是只读的,但它自己的属性是读/写的。使用这些属性可以配置按钮视图的外观和行为 我希望执行一个转换,缩小动画中按钮的大小,我希望按钮的图像也相应地缩小。然而,我发现我无法控制图像的大小。如果我修改UIButton的imageView属性的框架或边界,则似乎什么都不会发生。图像似乎希望保留其标准尺寸。更改imageView上的autolayout属性或按钮上的contentMode属性似乎也没有帮助 事实上,唯一

我很难计算我可以调整UIButton的imageView属性多少。文件中说:

尽管此属性是只读的,但它自己的属性是读/写的。使用这些属性可以配置按钮视图的外观和行为

我希望执行一个转换,缩小动画中按钮的大小,我希望按钮的图像也相应地缩小。然而,我发现我无法控制图像的大小。如果我修改UIButton的imageView属性的框架或边界,则似乎什么都不会发生。图像似乎希望保留其标准尺寸。更改imageView上的autolayout属性或按钮上的contentMode属性似乎也没有帮助

事实上,唯一有效的方法是使用UIEdgeInsetsMake从各个方面“挤压”图像,但这是不可设置动画的


我也不想使用backgroundImage属性,因为我已经开始使用它来设置按钮的样式。

您可以将自己的UIImageView作为子视图添加到UIButton中,而不是使用“嵌入式”imageView。
您可以将“您的”图像视图的框架设置为通常相对于周围的UIButton。您可以完全控制它的位置,还可以设置动画。

我觉得这样做很奇怪,但这是一个好主意。对于iOS7,您可以使用imageEdgeInsets,例如
[self.rightBarButton setImageEdgeInsets:UIEdgeInSetMake(0.0,self.rightBarButton.frame.size.width-image.size.width-10.0,0.0,0.0)];