在iOS中 – 我如何适应一个UILabel的文字,而不改变其位置?
我打电话sizeToFit
一个UILabel
上的sizeToFit
,它有正确的alignment文本。 它缩小UILabel
的高度和宽度,并将文本放在UILabel
左上angular。
现在… UILabel
的位置不正确。 我怎样才能使UILabel
保持在原来的位置(右alignment)或移动它,使它会出现在原来的位置?
再次 – 问题是sizeToFit
方法正在从UILabel
的右侧收缩宽度。 它将UILabel
文本视为左alignment。 但是我的文本是正确的。 所以, UILabel
的右边框是我的文本开始的地方。
你检查之前和之后的宽度,然后移动视图的中心右/差异2。
顺便说一句,我认为“框”(框)在两个方向收缩,保持中心完整。
@implementation UILabel (Additions) - (void)sizeToFitWithAlignmentRight { CGRect beforeFrame = self.frame; [self sizeToFit]; CGRect afterFrame = self.frame; self.frame = CGRectMake(beforeFrame.origin.x + beforeFrame.size.width - afterFrame.size.width, self.frame.origin.y, self.frame.size.width, self.frame.size.height); } @end