0

いくつかのボタンを AZ ボタンにして独自のキーボードを作成し、それらにタイトルを付けました。A ボタンにはタイトル A、B ボタンにはタイトル B などがあります。

ボタンをクリックすると、そのボタンのタイトルが表示されるようにラベルを追加しました。

AをクリックするとAが表示され、BをクリックするとBが表示されます。問題は、それらを並べて表示したいのですが、うまくいきません。たとえば、ABC を押すと、最初に A ではなく ABC が表示され、次に B に置き換えられ、次に C に置き換えられます。

-(IBAction) clicked: (id)sender{
    NSString *titleOfButton = [sender titleForState:UIControlStateNormal];
    NSString *newLabelText = [[NSString alloc] initWithFormat:@"%@", titleOfButton];
    labelsText.text = newLabelText;

}

これが機能する電卓のコードですが、コードに埋め込む正しい方法が見つかりません

//-(IBAction)buttonDigitPressed:(id)sender {
//currentNumber = currentNumber*10 + (float)[sender tag];
//calculatorScreen.text = [NSString stringWithFormat:@"%2f",currentNumber];
//}

これを機能させる方法を教えてくれる人、またはそれを機能させる他の方法を知っている人はいますか?

4

1 に答える 1

0

これは問題を引き起こしている行です:

labelsText.text = newLabelText;

ラベル テキストを newLabelText のみに設定しています。やりたいことは、文字列を連結することです。これにより、古いテキストと新しいテキストが結合されます。この1つの変更でそれを行う必要があります:

labelsText.text = [NSString stringWithFormat:@"%@%@", labelsText.text, newLabelText]
于 2012-04-12T23:54:45.193 に答える