1

基本上我希望 UIButton 出现在 UILabel 的末尾。UILabel 是本地化的,因此定位可能会有所不同。有没有办法让我的布局恰到好处?

4

3 回答 3

-1
button.frame = CGRectMake(label.frame.origin.x + label.frame.size.width - buttonWidth, label.frame.origin.y, buttonHeight, buttonWidth);

wherebuttonWidthbuttonHeight只是我用来描述你应该放在那里的任意变量

于 2013-03-20T14:51:20.067 回答
-1

我假设您想在同一视图上添加标签和按钮。你的意思是你的文本是本地化的,直到运行时才知道文本的大小。实际上,这是您要求的其他内容。因为你需要设置标签的大小取决于文本的大小。您可以使用以下方法计算文本的大小

- (CGSize)sizeWithFont:(UIFont *)font

或者您可以在设置文本后调整标签大小

- (void)sizeToFit

完成标签尺寸后

您可以设置按钮的框架,例如

button.frame = CGRectMake(label.frame.origin.x + label.frame.size.with, yPosition, buttonWidth, buttonHeight);

请注意,您需要在设置标签的框架后设置按钮的框架。如果您更改框架标签,则需要更改按钮的框架。或之前的 ios 6.0,您可以使用NSLayoutConstraint更多信息https://developer.apple.com/library/ios/#documentation/AppKit/Reference/NSLayoutConstraint_Class/NSLayoutConstraint/NSLayoutConstraint.html

于 2013-03-20T15:01:54.110 回答
-2

根据标签的宽度设置按钮的X值,这会将按钮设置在标签的右侧。现在它测试了。

button.frame = CGRectMake(self.mylabel.frame.origin.x+self.mylabel.frame.size.width, self.mylabel.frame.origin.y, 50.00, 20.00);

在此处输入图像描述

于 2013-03-20T14:43:14.317 回答