アクションでボタンの名前を取得する方法は?
質問
Startという名前のボタンがあり、その方法で名前が何であるかを呼び出していることを知りたいのですが、それを行う方法は本当にわかりません。これは、ボタンが呼び出す方法です。
-(IBAction) startMotion: (id)sender {
UIButton * buttonName = (UIButton *) sender;
NSLog(@"Button Name: %@", buttonName.currentTitle);
}
nslogプリント
ボタン名:( null)
解決 3
インターフェイスビルダーで間違ったプロパティを使用していました。私は、ボタン設定のタイトルプロパティではなく、インターフェイスビルダーのボタンの名前プロパティを使用していました。
他のヒント
ボタンのタイトルを介して設定できます
[b setTitle:@"Start" forState:UIControlStateNormal];
タイトルを取得するには(CurrentTitleは読み取り専用であり、nilになる場合があります):
[b currentTitle];
ところで、複数のボタンを区別したい場合は、ボタンのタグプロパティ(整数値)を設定できます。
また、ViewControllerクラスのボートレットとして指定されたボタンがあるかどうかを確認します。インターフェイスビルダーのアウトレットとして適切に接続されていますか?
ボタンのタイトルをローカライズする可能性があるため、ボタンのタイトルを読むのではなく、特定のタグを設定してタグ値を比較したいと思います。
所属していません StackOverflow