Как установить заголовок UIButton как выравнивание по левому краю? - PullRequest
446 голосов
/ 04 мая 2010

Мне нужно отобразить адрес электронной почты слева от UIButton, но он расположен в центре.

Есть ли способ установить выравнивание по левой стороне UIButton?

Это мой текущий код:

UIButton* emailBtn = [[UIButton alloc] initWithFrame:CGRectMake(5,30,250,height+15)];
emailBtn.backgroundColor = [UIColor clearColor];
[emailBtn setTitle:obj2.customerEmail forState:UIControlStateNormal];
emailBtn.titleLabel.font = [UIFont systemFontOfSize:12.5];
[emailBtn setTitleColor:[[[UIColor alloc]initWithRed:0.121 green:0.472 blue:0.823 alpha:1]autorelease] forState:UIControlStateNormal];
[emailBtn addTarget:self action:@selector(emailAction:) forControlEvents:UIControlEventTouchUpInside];
[elementView addSubview:emailBtn];
[emailBtn release];

Ответы [ 12 ]

0 голосов
/ 18 июня 2019

Попробуйте

button.semanticContentAttribute = UISemanticContentAttributeForceRightToLeft;
0 голосов
/ 29 апреля 2019

In Swift 5.0 и Xcode 10.2

У вас есть два способа подойти

1) Прямой подход

btn.contentHorizontalAlignment = .left

2) Пример SharedClass (написать один раз и использовать каждую посуду)

Это ваш общий класс (например, вы получаете доступ ко всем свойствам компонентов)

import UIKit

class SharedClass: NSObject {

    static let sharedInstance = SharedClass()

    private override init() {

    }
}

//UIButton extension
extension UIButton {
    func btnProperties() {
        contentHorizontalAlignment = .left
    }
}

В вашем ViewController звоните вот так

button.btnProperties()//This is your button
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...