如何设置UILabel的内边距
发布网友
发布时间:2022-05-13 20:28
我来回答
共2个回答
热心网友
时间:2023-10-26 01:41
最近在项目中,有个地方需要设置UILabel的内边距,即字体和Label控件之间的间隙。UILabel不像UIButton那样,有个contentEdgeInsets、titleEdgeInsets、imageEdgeInsets供我们设置文字或图片与按钮边界的界限,所以我们只能另外想其他办法来实现。其实,办法也很简单,只需要我们自定义UILabel,然后重写drawTextInRect:方法即可实现我们的目标。
CustomLabel.h
#import <UIKit/UIKit.h>
@interface CustomLabel : UILabel
@property (nonatomic, assign) UIEdgeInsets textInsets; // 控制字体与控件边界的间隙
@end
CustomLabel.m
#import "CustomLabel.h"
@implementation CustomLabel
- (instancetype)init {
if (self = [super init]) {
_textInsets = UIEdgeInsetsZero;
}
return self;
}
- (instancetype)initWithFrame:(CGRect)frame {
if (self = [super initWithFrame:frame]) {
_textInsets = UIEdgeInsetsZero;
}
return self;
}
- (void)drawTextInRect:(CGRect)rect {
[super drawTextInRect:UIEdgeInsetsInsetRect(rect, _textInsets)];
}
@end
Demo.m
CustomLabel *titleLabel = [[CustomLabel alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 100.f, 24.0f)];
titleLabel.backgroundColor = [UIColor whiteColor];
titleLabel.textColor = [UIColor blackColor];
titleLabel.font = [UIFont systemFontOfSize:12.0f];
titleLabel.textInsets = UIEdgeInsetsMake(0.f, 15.f, 0.f, 0.f); // 设置左内边距
热心网友
时间:2023-10-26 01:41
系统的UILabel附上文字后后自动给出一定的内边距,按照UI的设计图需求,标签附着文字后不能留有边距,只能自己自定义一个没有内边距的UILabel。
如何设置UILabel的内边距
titleLabel.backgroundColor = [UIColor whiteColor];titleLabel.textColor = [UIColor blackColor];titleLabel.font = [UIFont systemFontOfSize:12.0f];titleLabel.textInsets = UIEdgeInsetsMake(0.f, 15.f, 0.f, 0.f); // 设置左内边距 ...
如何设置UILabel的内边距
titleLabel.backgroundColor = [UIColor whiteColor];titleLabel.textColor = [UIColor blackColor];titleLabel.font = [UIFont systemFontOfSize:12.0f];titleLabel.textInsets = UIEdgeInsetsMake(0.f, 15.f, 0.f, 0.f); // 设置左内边距 ...
TextKit探究
还有一点要注意: 我发现一般来说UITextview都会有上下左右四个方向的边距(大约为8px),若想要修改UITextview中内容的四个边距,一般来说我们都会设置 contentInset 属性,但是,在textview中好像并不太好使,看了下文档,里边有一个属性 可以看到,此属性就是修改textview文本内容的containerView的内...
请问在CORELDRAW中如何设定文件居中?
如何设定WPS文字文件中的垂直居中 在wps中的水平垂直居中位置(wps9为例): 1、在表格中选中文字内容 2、右键文字内容选择表格属性 3、在表格属性中选择单元格 4、在单元格中选择垂直对齐方式为居中 5、按ctrl+e快捷键使选中的文字水平居中 请问在word文件里如何设定行距? 这个 在word文件中...
求教如何实现UICollectionViewCell的自适应宽度
self.dataArr = [text componentsSeparatedByString:@" "]; UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init]; // 设置具体属性 // 1.设置 最小行间距 layout.minimumLineSpacing = 20; // 2.设置 最小列间距 layout. minimumInteritemSpacing ...
word档案中字型竖向排列怎么设定
在indesign软体里怎么设定字型竖向排列 英文版估计没有吧,如果想有这个功能,需要安装CJK外挂。苹果5s简讯不能竖向排列怎么设定 你好,可以用手指在萤幕底部向上扫动,随后在弹出的控制中心中,点选“锁定”选项(也是一个圆圈里的小锁)就可以任意开启关闭了。怎么让UILabel上的字竖向排列 1:对...
如何设置UILabel的内边距
iOS 设置UILabel 的内边距 - (void)drawTextInRect:(CGRect)rect { UIEdgeInsets insets = {0, 5, 0, 5};[super drawTextInRect:UIEdgeInsetsInsetRect(rect, insets)];}
如何设置UILabel的内边距
iOS 设置UILabel 的内边距 - (void)drawTextInRect:(CGRect)rect { UIEdgeInsets insets = {0, 5, 0, 5};[super drawTextInRect:UIEdgeInsetsInsetRect(rect, insets)];}