Preciso exibir o endereço de email do lado esquerdo de um UIButton
, mas ele está sendo posicionado no centro.
Existe alguma maneira de definir o alinhamento no lado esquerdo de a UIButton
?
Este é o meu código atual:
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];
objective-c
uibutton
Madan Mohan
fonte
fonte
UIControlContentHorizontalAlignmentLeading
eUIControlContentHorizontalAlignmentTrailing
foram adicionados no iOS 11Você também pode usar o construtor de interface se não quiser fazer os ajustes no código. Aqui eu deixei alinhar o texto e também recuar alguns:
Não esqueça que você também pode alinhar uma imagem no botão:
fonte
No Swift 3+:
fonte
fonte
Swift 4+
fonte
Usar
emailBtn.titleEdgeInsets
é melhor quecontentEdgeInsets
, caso você não queira alterar toda a posição do conteúdo dentro do botão.fonte
Aqui está explicado como fazê-lo e por que funciona: http://cocoathings.blogspot.com/2013/03/how-to-make-uibutton-text-left-or-right.html
fonte
no xcode 8.2.1 no construtor de interface, ele se move para:
fonte
Há um pequeno erro no código de @DyingCactus. Aqui está a solução correta para adicionar um UILabel a um UIButton para alinhar o texto do botão para controlar melhor o botão 'title':
Espero que isto ajude....
Al
fonte
Para o Swift 2.0:
Isso pode ajudar se for necessário.
fonte
No Swift 5.0 e no Xcode 10.2
Você tem duas maneiras de abordar
1) Abordagem direta
2) Exemplo de SharedClass (escreva uma vez e use todos os itens)
Esta é sua classe compartilhada (assim você acessa todas as propriedades dos componentes)
Na sua chamada ViewController como esta
fonte
Tentar
fonte