首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在点击时禁用UIButton高亮显示?

如何在点击时禁用UIButton高亮显示?
EN

Stack Overflow用户
提问于 2013-07-08 21:50:33
回答 4查看 43K关注 0票数 28

如何在点击时禁用按钮突出显示效果?有白色的bg颜色和DarkGray文本颜色的自定义按钮。问题是单击按钮时文本变为白色。已经尝试过了,但都不起作用:

a.在界面构建器中取消选中“高亮显示的Ajusts图像”。

b.在按下按钮的方法中尝试设置突出显示=否:

代码语言:javascript
复制
((UIButton *)sender).highlighted = NO

c.尝试为highlihted状态设置相同标题:

代码语言:javascript
复制
[button setTitle:[button titleForState:UIControlStateNormal] forState:UIControlStateHighlighted];

有什么建议吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-07-08 21:55:42

UIButton将在单击时突出显示,因此选中按钮设置可将突出显示状态配置中的标题颜色更改为与默认状态相同,或者您可以设置:

代码语言:javascript
复制
[button setTitleColor:[UIColor blackColor] forState:UIControlStateHighlighted];

如果你想控制代码高亮显示,你可以禁用正常的按子类突出显示按钮,并在touchesBegin中禁用:

代码语言:javascript
复制
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
    if (self.state == UIControlStateHighlighted) {
        [self setHighlighted:NO];
    }
}
票数 12
EN

Stack Overflow用户

发布于 2014-03-22 14:16:40

您还可以从StoryBoard中创建自定义类型: UIButton

这将为您剥离所有系统行为。(我想)

票数 47
EN

Stack Overflow用户

发布于 2015-06-11 18:14:55

这是一种针对具有图像的按钮的解决方案。在情节提要中,有一个名为HighlightedAdjustsImage的属性,默认情况下处于启用状态。禁用该选项,您的按钮图像将不会显示任何突出显示的属性。

票数 24
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17528397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档