我的iPhone应用程序中有各种需要填充的视图,例如一个文本左对齐的自定义UIButton,以及一个背景色的UILabel。
这可能是一个非常愚蠢的问题,但我如何应用‘填充’来将文本从左边移走呢?
我已经厌倦了使用边界等,但没有任何成功。
我知道我可以为我的UILabel
创建一个带有背景色的包装器视图,但这似乎有点过分了。
非常感谢。
发布于 2010-06-17 00:36:46
到目前为止,我找到的最简单的解决方案是:
self.textAlignment = UITextAlignmentCenter;
[self sizeToFit];
CGRect frame = self.frame;
frame.size.width += 20; //l + r padding
self.frame = frame;
不完全是我想要的,但它是有效的。
发布于 2010-07-14 09:11:26
我正在尝试实现一个类似的东西,那就是'pad‘a UILabel
。我一直在尝试实现Toby在上面发布的解决方案,但似乎找不到需要去做的地方。我正在使用的UILabel左对齐-这是导致问题的原因吗?
我尝试过在viewDidLoad
中使用它,甚至在方法中的UILabel的子类中也是如此:
- (CGRect)textRectForBounds:(CGRect)bounds
limitedToNumberOfLines:(NSInteger)numberOfLines
发布于 2018-09-19 21:19:05
创建一个扩展UIButton的自定义类并覆盖它会怎么样:
- (CGRect)titleRectForContentRect:(CGRect)contentRect
{
return UIEdgeInsetsInsetRect(contentRect, UIEdgeInsetsMake(topPadding, rightPadding, bottomPadding, leftPadding));
}
在UILabel的情况下,只需覆盖:
- (CGRect)textRectForBounds:(CGRect)bounds
limitedToNumberOfLines:(NSInteger)numberOfLines;
https://stackoverflow.com/questions/3052731
复制相似问题