-1

私は持っていUILabel *lblTestます。で、このラベルにテキストを「test」として設定しましたInterface Builder

ここで、コードを使用して lblTest テキストを「新しいテスト」として設定します。

それで、もう一度、すでに設定した「テスト」テキストを取得したいと思いますInterface Builder

これを賢く行う方法はありますか?

注:行コードの数には興味がありません....単一行のソリューションを期待しています。

前もって感謝します。

4

2 に答える 2

1

「元に戻す」機能のようなものが必要だと思います。あなたが説明したことを行う特別な方法はありません。あなたができることの1つは次のとおりです。

  1. ラベル テキストを「新しいテスト」として設定する前に、最初の文字列を NSString 変数に格納します。

    NSString *oldString = lblTest.text;
    
  2. コードからテキストを変更します。

    self.lblTest.text = @"new test";
    
  3. 必要に応じて、古い文字列に戻します。

    self.lblTest.text = oldString;
    
于 2013-01-09T13:03:47.713 に答える
1

Interface Builderの値は、自分で作成したコード コードによって上書きされることを理解する必要があります。

したがって、コードがラベルを変更したら、次のようにInterface Builderの値を元に戻すことができます。

NSString* lblTestString = lblTestString.text;

//now set your value from the code
[lblTest setText:@"new Test"];

//and revert it to what was already in the interface builder
[lblTest setText:lblTestString];

それでも本当に意味不明..

于 2013-01-09T13:04:46.677 に答える