按钮标题文本未完全显示

时间:2012-02-24 08:05:57

标签: iphone ios5

我正在使用Xcode 4.2 iOS 5.0并使用故事板。我有简单的按钮,我将该按钮与outlet连接。现在我正在从代码更改按钮文本。问题是,如果我的按钮标题字符串是“嘿,你好吗?”然后按钮标题显示“嘿......你?”任何人都可以建议我在哪里做错了或错过了其他的东西?

![在此处输入图像说明] [1]
这是IB设置。
我刚写了btw.textLabel.text = textstr;和框架是(0,0,290,42),文本str是时间,例如[NSDate date]

5 个答案:

答案 0 :(得分:6)

你的按钮宽度小于标题字符串的长度。这就是原因 它会截断字符串的中间部分。您可以设置内容 模式到IB中的CharacterWrap可以使标题分为两行或者你可以 将字体大小更改为较小的字体以适合您的按钮宽度或 您可以更改按钮宽度以占据整个字符串。比较喜欢 什么对你好。

答案 1 :(得分:2)

试试[myButton sizeToFit]; //由于最少30个字符,我需要输入9个以上的字符来回答这个问题。

答案 2 :(得分:1)

我不确定这是否已在XCode 4.2中有效,但现在确实如此;)

您需要使用UIButton方法setTitle:forState:

[self.myButton setTitle:@"Correct New Title" forState:UIControlStateNormal];

因为这将正确更新按钮标签的大小和位置。仅使用self.myButton.titleLabel.text = @"Wrong New Title";设置标题的地方不会。

致James Beith的信用(见UIButton - text truncated中的答案)

答案 3 :(得分:0)

myButton.textLabel.text = @"some very long title";
[myButton.textLabel sizeToFit];

答案 4 :(得分:0)

用于SWIFT 4,5

您需要使用“ setTitle”而不是“ textLabel.text”

Button.setTitle("this is maximium line text come", for: .normal)