web-dev-qa-db-ja.com

UIButtonタイトルの配置と複数行のサポート

UIButtonのタイトルを左揃えに設定するにはどうすればよいですか。また、UIButtonに複数行のテキストを表示するにはどうすればよいですか。

67
Raju

以下は、コード内でUIButtonの位置合わせを行うコードです。-

[myButton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentLeft];
187
Ian Kershaw

UIButtonの配置を設定するには、Interface Builderの属性インスペクターでボタンを探します。 Alignmentというセクションがあります。左に設定します。または、あなたが望むものは何でも。

enter image description here

コードでそれを行うには、contentHorizontalAlignmentの-​​ UIControl プロパティを使用します。次のプロパティのいずれかに設定できます。

UIControlContentHorizontalAlignmentCenter
UIControlContentHorizontalAlignmentLeft
UIControlContentHorizontalAlignmentRight
UIControlContentHorizontalAlignmentFill

[myButton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentRight];

これらのオプションはどれも特に上手く見えません(上記を参照)。contentEdgeInsetsUIButtonプロパティを使用してコンテンツの位置を変更することで、さらに幸運が得られるかもしれません。

UIButtonに複数行のタイトルを設定するには、 このフォーラムの投稿を確認してください ボタンラベルの変更について説明します。

または、このコードを使用して、2行のボタンをすばやく作成できます。

myButton.titleLabel.textAlignment = UITextAlignmentCenter;
myButton.titleLabel.lineBreakMode = UILineBreakModeCharacterWrap;
[myButton setTitle:@"Siegfried\nRoy" forState:UIControlStateNormal];

enter image description here

Raju、質問を受け入れ済みとしてマークすることを忘れないでください。

130
nevan king

実際には、lineBreakModeUILineBreakModeWordWrapまたはUILineBreakModeCharacterWrapに設定できます。これにより、必要に応じてテキストが複数行に分割されます。

7
Marc

これを試して

    myButton.titleLabel.textAlignment = UITextAlignmentLeft;
    myButton.titleLabel.lineBreakMode = UILineBreakModeCharacterWrap;
    myButton.titleLabel.numberOfLines = 0;
6
rakeshNS

段落効果を追加するには、タイトルのサイズを変更できます。

For alinea effect

3
Anthone