美文网首页iOS
设置 UIButton 文字内容的位置与偏移量

设置 UIButton 文字内容的位置与偏移量

作者: survivorsfyh | 来源:发表于2022-04-08 16:16 被阅读0次

    设置 UIButton 文字内容位置的时候常会使用设置 UILable 的方式去对齐调试,但编译运行后发现文字样式并未能如愿以偿的改变,例如如下案例:

    修改前

    UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
    [btn setBackgroundColor:[UIColor whiteColor]];
    [btn setTitle:@"隐私协议" forState:UIControlStateNormal];
    [btn setTitleColor:[UIColor lightGrayColor] forState:UIControlStateNormal];
    btn.titleLabel.font = [UIFont systemFontOfSize:14];
    btn.titleLabel.textAlignment = UITextAlignmentLeft; // 尝试设置 btn 文字位置
    btn.tag = 2000;
    [btn addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
    _btnPolicy = btn;
    

    修改后

    首先对 UIButton 的 contentHorizontalAlignment 或者 contentVerticalAlignment 进行横纵水平方位的改变(具体方位可参考其枚举进行选择);
    其次,设置其与边距的偏移量,因为设置方向后其文字内容是与控件边框贴合的很不美观;
    最后,对其 UIButton 调整后的 code 如下:

    UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
    [btn setBackgroundColor:[UIColor whiteColor]];
    [btn setTitle:@"隐私协议" forState:UIControlStateNormal];
    [btn setTitleColor:[UIColor lightGrayColor] forState:UIControlStateNormal];
    btn.titleLabel.font = [UIFont systemFontOfSize:14];
    btn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; // 设置 btn 文字位置
    btn.contentEdgeInsets = UIEdgeInsetsMake(0, 20, 0, 0); // 为 btn 文字内容设置偏移量
    btn.tag = 2000;
    [btn addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
    _btnPolicy = btn;
    

    以上便是此次分享的全部内容,希望能对大家有所帮助!

    相关文章

      网友评论

        本文标题:设置 UIButton 文字内容的位置与偏移量

        本文链接:https://www.haomeiwen.com/subject/qiuysrtx.html