如何突出显示整个UIButton,而不仅仅是左侧的图像?

4

我有一个普通的UIButton,左侧带有一张图片。在Storyboard中打开Show touch on highlight选项,但是当我点击这个按钮时,只有图片被高亮显示,文字没有!我想要整个UIButton都被高亮。

截图


你尝试过这个吗?https://dev59.com/EFTTa4cB1Zd3GeqPow9W - Krish
@Krish,感谢您的回复,但您所指的问题涉及文本“颜色”,而我指的是文本“高亮”(截图中箭头周围的白色云)。 - Egor
@Andriko13,谢谢你,但那并没有帮助-只有箭头闪烁。 - Egor
'back'/'nazad' 是 UIButton 的标题吗? - Andriko13
这段文字是图片的一部分吗?我的意思是,它是完整的带有文本和箭头的图片,还是你通过标题添加了文本和箭头,并带有背景图片? - NewStackUser
显示剩余3条评论
2个回答

2

我遇到了同样的问题。一种解决方法是更改高亮状态下的标题颜色。

有两种解决方案:

1/ 在界面构建器中:

  • 在你的UIButton属性中,对于“state config”属性,选择“highlighted

  • 更改文本颜色属性为你想要的高亮颜色。

enter image description here

2/ 编程方式:

与上面的思路相同,在Swift 3中,你可以这样做:

button.setTitleColor(.black, for: .highlighted)

0

将图像设置为“背景图像”,标题保持不变,现在选择“显示高亮触摸”选项。希望这有所帮助,并会突出显示整个按钮。


1
谢谢,标记为“最佳答案”。但除了设置背景之外,我还必须制作自定义的UIButton类并重新定义“backgroundRectForBounds”方法 - 否则箭头的大小将与整个按钮一样(被拉伸到巨大的尺寸)。 - Egor

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接