UIButton文字居左显示

2017-08-23  本文已影响0人  孟浩没有然丶

UILabel文字居左显示,实现文字居左显示代码如下:

UILabel *label = [[UILabel alloc] init];
label.frame = CGRectMake(50, 100, 200, 50);
label.text = @"label";
label.textAlignment = NSTextAlignmentLeft;
label.backgroundColor = [UIColor orangeColor];
[self.view addSubview:label];

按照UILabel文字居左的写法,UIButton应该这么写:

 button.titleLabel.textAlignment = NSTextAlignmentLeft;

我们发现UIButton的文字还是居中显示。竟然没有居左显示,怎么办呢?进UIButton看看,还有哪些属性。很快发现:

@property(nonatomic) UIControlContentHorizontalAlignment contentHorizontalAlignment; // how to position content hozontally inside control. default is center

typedef NS_ENUM(NSInteger, UIControlContentHorizontalAlignment) {
    UIControlContentHorizontalAlignmentCenter = 0,
    UIControlContentHorizontalAlignmentLeft   = 1,
    UIControlContentHorizontalAlignmentRight  = 2,
    UIControlContentHorizontalAlignmentFill   = 3,
};

设置contentHorizontalAlignment

button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;

完成!! 如果感觉看着居左显示很难看,太靠边。可以设置UIButton的titleEdgeInsets属性:

button.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);

这样button的title就距左边10个像素的距离。

同理居右显示:

button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentRight;
上一篇下一篇

猜你喜欢

热点阅读