我去过以下链接:
How to programatically highlight a UIButton?
在他们的代码的前两行中我发现:
UIImage* normalImage = [_infoButton imageForState:UIControlStateNormal];<br>
UIImage* highlighted = [_infoButton imageForState:UIControlStateHighlighted];
他们的infoButton似乎已经使用了多张图片。我有一个带有许多按钮的应用程序,每个按钮都有不同的图像,这使我的应用程序非常庞大。如果我为normalState
和highlightedState
制作了不同的图片,我的应用尺寸会增加一倍。因此,对于我的按钮图像,我需要一些想法,如模糊,按钮或图像的缩小,或缩小。我不知道代码,这是我的问题。
如何动画/突出显示iPhone上的按钮?
提前致谢。
答案 0 :(得分:3)
首先,“体积非常大”是一个相对的东西。是否超过10 MB限制阻止通过网络下载?如果没有,也许你不应该担心它。
其次,您是否尝试以压缩效果更好的形式保存图像,例如JPEG?
第三,这些“不同的图像”是否大不相同,如“在一种状态下它看起来像一头大象而在另一种状态下它看起来像泰姬陵”?还是需要不同的“大象状态”?听起来像后者。
一种可能性是设置按钮的某些属性以激活不同的绘图行为。看看这两个选项:
button.reversesTitleShadowWhenHighlighted
button.adjustsImageWhenHighlighted
或尝试不同的
- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state;
他们实际上提供了很多选择。
答案 1 :(得分:1)
好的!我有一个解决方案。
这与我的要求非常相似。 是的,可能还有其他解决方案,
我发现哪个更接近我的要求。
在视图中选择您的UIButton &安培;设置按钮属性
- &GT;复选标记 - &gt;显示触摸突出显示。