「。」を印刷しようとしています。「。」と表示されたボタンを押したとき。
基本的には「。」をつかみたい。NSString形式で
だから私がするなら
NSString *dec = [送信者 currentTitle];
実行しようとするとクラッシュします。
「。」を印刷しようとしています。「。」と表示されたボタンを押したとき。
基本的には「。」をつかみたい。NSString形式で
だから私がするなら
NSString *dec = [送信者 currentTitle];
実行しようとするとクラッシュします。
Cocoa では、すべてのコントロールは、ターゲット アクション メカニズムを使用して、操作されたという通知を送信します。「ターゲット」は他のオブジェクトであり、「アクション」はそのオブジェクトが応答する任意のセレクターです。ボタンも同じです。
たとえば、次のように定義できます。
-(void)buttonClicked:(id)sender {
NSLog(@"Button was clicked!");
}
それに応じて呼び出し-setTarget:
て、それをボタンのターゲットアクションに接続します。アクションを処理するクラス内からこれを行う場合、-setAction:
ターゲットは になります。self
[button setTarget:self];
[button setAction:@selector(buttonClicked:)]
ボタンが押されると、コンソールに NSLog() 出力が表示されます。
NSLog() で何かを出力する代わりにラベルの値を更新するには、おそらくそれを理解できますが、次のようになります。
-(void)buttonClicked:(id)sender {
[label setText:@"."];
}
このことについて詳しく説明している Apple のドキュメントを読む必要があります。
PS: stackoverflow はすべてのプログラミング言語に対応しているため、質問には必ず関連するプログラミング言語のタグを付けてください。
これを試して。
UIButton *resultButton = (UIButton *)sender;
NSString *dec = resultButton.currentTitle;
このようなことを試してください
NSString *strdec = [sender titleLabel].text;