【发布时间】:2016-04-04 18:22:17
【问题描述】:
【问题讨论】:
标签: ios swift uibutton underline
【问题讨论】:
标签: ios swift uibutton underline
这不是问题。您不应尝试对抗用户设置的任何可访问性更改。他们在那里是有原因的。
【讨论】:
这是用户4291543对此问题Remove underline on UIButton in iOS 7的回答
[yourBtnHere setBackgroundImage:[[UIImage alloc] init] forState:UIControlStateNormal];
我发现这个答案适用于 SWFrameButton
对于所有其他人说“不要这样做”,SWFrameButton 是一个很好的例子,说明您何时想要这样做。我也认为 OP 的情况也是一个完全有效的场景......
【讨论】:
我完全同意@maddy 的评论: 这不是问题。您不应尝试对抗用户设置的任何可访问性更改。他们在那里是有原因的。
但我确实偶然发现了完成手头任务的方法......
除了 UIButton,您还需要制作一个不包含任何内容的 .png 文件(这意味着整个内容的不透明度为 0%)。继续并将其加载到您的 xcode 项目的资产中。
现在继续将按钮的背景设置为您刚刚提供的图像。 (在我的例子中,我称之为clear)这将删除按钮文本中的下划线。但是,现在您看不到按钮的边界。这可以通过更改按钮视图的背景来解决。继续为 View 的 Background 属性选择任何颜色,现在 View 的背景明显定义了按钮的边界。您可以看到这一点,因为您的 clear.png 的不透明度为 0%。
see the Attributes inspector for UIButton here.
与其试图通过 UITapGestureRecognizer 使标签执行某些操作来消除下划线,这允许您仍然使用 UIButton。与辅助功能保持一致,以便为想要这样做的人标记按钮。
【讨论】:
您可以创建一个带有标签(颜色清晰)的自定义按钮类。如果您设置此标签的文本,则它不应该有下划线。
【讨论】:
您确定要这样做吗? Apple 添加了一项辅助功能,为想要这样做的人标记按钮。 Apple 可能会拒绝您的应用,因为它破坏了旨在帮助残疾人的系统功能。
【讨论】:
我找到了解决方案。您所要做的就是将图片设置为按钮的背景。只需选择与您创建的按钮颜色相同的图片即可。
【讨论】: