XIB で、画像のないカスタム UIButton を作成しました。ボタンをクリックすると、タイトルが消えます。
テキストに重なる画像がないため、これらの回答は役に立ちませんでした
背景色がないため、これも役に立ちませんでした
これも役に立たなかった
XIB で、画像のないカスタム UIButton を作成しました。ボタンをクリックすると、タイトルが消えます。
テキストに重なる画像がないため、これらの回答は役に立ちませんでした
背景色がないため、これも役に立ちませんでした
これも役に立たなかった
UIButton とそのサブクラスには、コードまたは IB のステージ構成によって変更できる 4 つの状態があります。
normal
highlighted
selected
disabled
UIKit フレームワークの UIButton.h を確認すると、それらの使用方法がわかります。
- (void)setTitle:(NSString *)title forState:(UIControlState)state;
- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state;
- (void)setImage:(UIImage *)image forState:(UIControlState)state;
- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state;
通常状態にTitle、image、またはbackGroundImageを設定すると、他の状態のデフォルトは通常状態と同じになります。
デフォルトの状態は通常ですが、他の状態を設定できます。
[button setHighlighted:YES];
[button setSelected:YES];
[button setEnable:NO];//disable state
ボタンはクリックすると通常から強調表示に変わります。通常のタイトルを保持したい場合は、以下を確認してください。
-通常の状態と強調表示された状態にsetImageまたはconfigイメージを使用しないでください(backgroundImageのみを使用してください)
-SetTitle:@"" forState:UIControlStateHighlighted または IB で何も設定しないでください。- UIButton backgroundColor と同じ IB で TitleColor を設定したり、titleColor を選択したりしないでください。
4 つの異なるタイトルと 1 つのボタンの backGroundImages をテストして、どのように表示されるかを知ることができます。
XIB では、 を変更してState Config
から、対応する状態のタイトルを設定することで、さまざまな状態のそれぞれにタイトルを設定できます。次の例では、州のタイトルを に設定し、Default
州Title
のHighlighted
タイトルを 1 つのスペースに設定しているため、アプリでは空白として表示されます。ただし、プレビューにはDefault
設定のみが表示され、異なる構成では更新されないことに注意してください (下の画像を参照)。
デフォルト状態のタイトル
ハイライトされた州のタイトル
// for setting text in normal state
[_myButton setTitle:@"myText" forState:UIControlStateNormal];
// show another text on touch
[_myButton setTitle:@"myText" forState:UIControlStateHighlighted];