31

UIButton「再生」と「一時停止」の 2 つのステータスが必要です。つまり、ユーザーが最初にそれを見たときは「再生」と表示され、ユーザーがクリックするたびに「再生」と「一時停止」を切り替える必要があります。

コントローラー自体を作成できました-コンテンツは適切に再生および一時停止されます-しかし、UIButton Text Label テキストを変更できないようです。

私が使う:

myButton.titleLabel.text = @"Play";

myButton.titleLabel.text = @"Pause";

動いていない。テキストは変更されていません。[myButton.titleLabel setText:@"Pause"] も試しましたが、うまくいきません。

どうすれば設定できますか?

4

4 に答える 4

69

そのはず:

[myButton setTitle:@"Play" forState:UIControlStateNormal];

あなたも合格する必要がありstateます。ここでstateのを確認できます。

次に、次のようなことを行うことができます。

[myButton setTitle:@"Play" forState:UIControlStateNormal];
[myButton setTitle:@"Stop" forState:UIControlStateSelected];
于 2012-06-21T09:46:08.647 に答える
2

属性付きの文字列が追加されたため、これはやや古くなっていることがわかりました。ストーリーボードで割り当てられたボタンのタイトルは、明らかに属性付きの文字列です。属性付きのタイトルは NSString のタイトルよりも優先されるため、単純な文字列をタイトルとして使用する場合は、最初に属性付きのタイトルを削除する必要があります。もっと良い方法があるかもしれませんが、私は以下のようにしました。もちろん、新しいタイトルを属性付きの文字列にすることもできます。

[myButton setAttributedTitle: nil     forState: 0xffff];
[myButton           setTitle: @"Play" forState: UIControlStateNormal];
于 2014-04-09T17:18:52.773 に答える