基本上我希望UIButton出现在UILabel的末尾。 UILabel是本地化的,因此定位可能会有所不同。我有办法让布局恰到好处吗?
答案 0 :(得分:-1)
button.frame = CGRectMake(label.frame.origin.x + label.frame.size.width - buttonWidth, label.frame.origin.y, buttonHeight, buttonWidth);
其中buttonWidth
和buttonHeight
只是我用来描述你应该放置什么的任意变量
答案 1 :(得分:-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
答案 2 :(得分:-2)
根据标签的宽度设置按钮的X值,这将在标签的右侧设置按钮。现在它已经过测试。
button.frame = CGRectMake(self.mylabel.frame.origin.x+self.mylabel.frame.size.width, self.mylabel.frame.origin.y, 50.00, 20.00);