首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将多行文本添加到UIButton?

如何将多行文本添加到UIButton?
EN

Stack Overflow用户
提问于 2009-03-03 00:22:12
回答 30查看 199.3K关注 0票数 386

我有以下代码...

代码语言:javascript
运行
复制
UILabel *buttonLabel = [[UILabel alloc] initWithFrame:targetButton.bounds];
buttonLabel.text = @"Long text string";
[targetButton addSubview:buttonLabel];
[targetButton bringSubviewToFront:buttonLabel];

我的想法是我可以让按钮有多行文本,但文本总是被UIButton的backgroundImage所遮挡。显示按钮的子视图的日志记录调用表明UILabel已被添加,但文本本身不可见。这是UIButton中的一个bug,还是我做错了什么?

EN

回答 30

Stack Overflow用户

回答已采纳

发布于 2009-12-02 06:34:56

对于iOS 6和更高版本,请使用以下命令来允许多行:

代码语言:javascript
运行
复制
button.titleLabel.lineBreakMode = NSLineBreakByWordWrapping;
// you probably want to center it
button.titleLabel.textAlignment = NSTextAlignmentCenter; // if you want to 
[button setTitle: @"Line1\nLine2" forState: UIControlStateNormal];

适用于iOS 5及更低版本的使用以下命令来允许多行:

代码语言:javascript
运行
复制
button.titleLabel.lineBreakMode = UILineBreakModeWordWrap;
// you probably want to center it
button.titleLabel.textAlignment = UITextAlignmentCenter;
[button setTitle: @"Line1\nLine2" forState: UIControlStateNormal];

2017,对于iOS9 forward

一般来说,只需要做这两件事:

Break the > Wrap"“

  1. choose "Attributed
    1. ”换行“弹出式select "Word Wrap”
票数 697
EN

Stack Overflow用户

发布于 2014-05-14 23:36:05

选择的答案是正确的,但如果您更喜欢在Interface Builder中执行此类操作,则可以执行以下操作:

票数 152
EN

Stack Overflow用户

发布于 2015-10-21 17:03:54

如果要添加标题以多行居中的按钮,请设置该按钮的界面生成器设置:

[

]

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

https://stackoverflow.com/questions/604632

复制
相关文章

相似问题

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