任何人都知道如何删除UIButton下划线出现,因为辅助功能?(我知道这是因为用户打开了“按钮形状”)
UIButton
我如何通过编程或在Xcode中设置一些属性来删除它?
6gpjuf901#
我就直说了吧苹果增加了一个辅助功能,允许用户在需要时用下划线标记按钮。你想要一种方法来击败这个功能,专门设计来帮助残疾人使用他们的设备,当功能是用户必须要求的。为什么?很可能无法使用标准按钮。如果你真的找到了一种方法,苹果很可能会拒绝你的应用程序,因为它破坏了一个旨在帮助残疾人的系统功能。所以答案是:别这样
mkshixfv2#
设置按钮的背景图像。
[yourBtnHere setBackgroundImage:[[UIImage alloc] init] forState:UIControlStateNormal];
uidvcgyl3#
检查以下code:
code
NSMutableAttributedString *attrStr = [[yourBtnHere attributedTitleForState:UIControlStateNormal] mutableCopy];//or whatever the state you want [attrStr enumerateAttributesInRange:NSMakeRange(0, [attrStr length]) options:NSAttributedStringEnumerationLongestEffectiveRangeNotRequired usingBlock:^(NSDictionary *attributes, NSRange range, BOOL *stop) { NSMutableDictionary *mutableAttributes = [NSMutableDictionary dictionaryWithDictionary:attributes]; [mutableAttributes removeObjectForKey:NSUnderlineStyleAttributeName]; [attrStr setAttributes:mutableAttributes range:range]; }];
·与检查员/IB:选择UIButton。显示Attributes Inspector。Text设置应在Attributed中。选择文本,点击喜欢的项目删除下划线设置它在none。
Attributes Inspector
Text
Attributed
none
9nvpjoqh4#
“按钮形状”是iOS 7.1中的新辅助功能选项。如果用户希望激活此选项,则您无能为力。这是用户的选择。
zpf6vheq5#
如果按钮是下划线由于辅助功能按钮形状选项,那么你可以设置按钮标题使用图像,而不是文本。简单地创建图像,文本将被绘制,并将其设置为按钮。在这种情况下,iOS无法识别其中的文本,也不会插入下划线。你可以把它看作是黑客,但不是明确的解决方案。
1tu0hz3e6#
您无法关闭此辅助功能。如果你真的想摆脱它,可以创建一个自定义的UILabel或UIView with UITapGestureRecognizer。
hmae6n7t7#
首先从已设置的按钮获取attribute string。
attribute string
NSMutableAttributedString *attrStr = [[yourBtnHere attributedTitleForState:UIControlStateNormal] mutableCopy];
使用removeAttribute删除属性,如下所示:
removeAttribute
[attrStr removeAttribute:NSUnderlineStyleAttributeName range:NSMakeRange(0,[attrStr length])]; [attrStr addAttribute: NSUnderlineStyleAttributeName value: [NSNumber numberWithInt:0] range: [attrStr length]];
使用addAttribute重置属性,如下所示:
addAttribute
UIColor *textBtncolor = [UIColor blackColor]; [attrStr addAttribute:NSForegroundColorAttributeName value:textBtncolor range:NSMakeRange(0, attrStr.length)];
现在设置属性字符串在您的按钮
[yourBtnHere setAttributedTitle:[attrStr copy] forState:UIControlStateNormal];
7条答案
按热度按时间6gpjuf901#
我就直说了吧苹果增加了一个辅助功能,允许用户在需要时用下划线标记按钮。
你想要一种方法来击败这个功能,专门设计来帮助残疾人使用他们的设备,当功能是用户必须要求的。
为什么?
很可能无法使用标准按钮。如果你真的找到了一种方法,苹果很可能会拒绝你的应用程序,因为它破坏了一个旨在帮助残疾人的系统功能。
所以答案是:别这样
mkshixfv2#
设置按钮的背景图像。
uidvcgyl3#
检查以下
code
:·与检查员/IB:选择
UIButton
。显示
Attributes Inspector
。Text
设置应在Attributed
中。选择文本,点击喜欢的项目删除下划线设置它在none
。9nvpjoqh4#
“按钮形状”是iOS 7.1中的新辅助功能选项。如果用户希望激活此选项,则您无能为力。这是用户的选择。
zpf6vheq5#
如果按钮是下划线由于辅助功能按钮形状选项,那么你可以设置按钮标题使用图像,而不是文本。简单地创建图像,文本将被绘制,并将其设置为按钮。在这种情况下,iOS无法识别其中的文本,也不会插入下划线。
你可以把它看作是黑客,但不是明确的解决方案。
1tu0hz3e6#
您无法关闭此辅助功能。
如果你真的想摆脱它,可以创建一个自定义的UILabel或UIView with UITapGestureRecognizer。
hmae6n7t7#
首先从已设置的按钮获取
attribute string
。使用
removeAttribute
删除属性,如下所示:使用
addAttribute
重置属性,如下所示:现在设置属性字符串在您的按钮