iOS上如何让按钮(UIbutton)文本左对齐展示

Posted gccbuaa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS上如何让按钮(UIbutton)文本左对齐展示相关的知识,希望对你有一定的参考价值。

  1. // button.titleLabel.textAlignment = NSTextAlignmentLeft; 这句无效  
  2.       button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;  
  3.       button.titleEdgeInsets = UIEdgeInsetsMake(01000);  

在做UI界面的时候一直困惑与如何让button的文字左对齐展示,今天重新遇到。决定彻底解决问题

首先我们会想到以下的代码

button.titleLabel.textAlignment = NSTextAlignmentLeft; 这行代码是没有效果的。这仅仅是让标签中的文本左对齐,但

并没有改变标签在button中的对齐方式。


所以。我们首先要使用

button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; 这行代码,把按钮的内容(控件)

的对齐方式改动为水平左对齐,可是这们会紧紧靠着左边,不好看,

所以我们还能够改动属性:

button.titleEdgeInsets = UIEdgeInsetsMake(0800);

这行代码能够让button的内容(控件)距离左边8个像素。依据自己须要调整。也可为负数(--8)这样就好看多了。希望对大家也有帮助

2015.7.31改动

以下是button和文字上下对齐展示

int origin_Y;
    origin_Y=64;
    for (int i=0; i<4; i++) {
        UIButton *btn = [[UIButton alloc]initWithFrame:CGRectMake(100, origin_Y,50, 50)];
        btn.backgroundColor = [UIColor greenColor];
        [btn setImage:[UIImage imageNamed:@"bbc"] forState:UIControlStateNormal];
        [btn setTitle:@"測试" forState:UIControlStateNormal];
        [btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
        btn.titleLabel.backgroundColor = [UIColor blueColor];
        //btn.contentVerticalAlignment = UIControlContentVerticalAlignmentTop;
        btn.imageEdgeInsets = UIEdgeInsetsMake(5,10,21,0);
        btn.titleEdgeInsets = UIEdgeInsetsMake(30,-(btn.frame.size.width-10*2), 0, 0);
        [btn addTarget:self action:@selector(click) forControlEvents:UIControlEventTouchUpInside];
        [self.view addSubview:btn];
        origin_Y+=(btn.frame.size.height+10);
    }


技术分享

如有问题欢迎不吝赐教!




以上是关于iOS上如何让按钮(UIbutton)文本左对齐展示的主要内容,如果未能解决你的问题,请参考以下文章

使用自动布局创建带有文本和图像的 iOS 7 UIButton

UIButton 标题左对齐问题 (iOS/Swift)

可以左对齐按钮文本但右对齐背景或按钮图像?

如何在 iOS 中像 UITabBarItem 一样设计 UIButton?

如何将 UIButton 文本与 UILabel 文本垂直对齐?

左对齐按钮的文本