项目中有时候会用到这个小功能, 有一次面试时候遇到提到这个问题, 在此记录一下
UIButton左对齐其实直接设置属性就好了, contentHorizontalAlignment
但是设置contentHorizontalAlignment属性后, 文字会贴在边框上面
所以这里需要调节一下contentEdgeInsets
UIButton *leftBtn = [[UIButton alloc] initWithFrame:CGRectMake(50, 100, 150, 50)];
leftBtn.backgroundColor = [UIColor redColor];
[leftBtn setTitle:@"标题左对齐" forState:UIControlStateNormal];
[leftBtn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
//直接设置contentHorizontalAlignment属性就好
leftBtn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
//但是设置contentHorizontalAlignment属性后, 文字会贴在边框上面
//所以这里需要调节一下contentEdgeInsets
leftBtn.contentEdgeInsets = UIEdgeInsetsMake(0,5, 0, 0);
[self.view addSubview:leftBtn];