-2

UILabel は ViewDidLoad メソッドから変更されません。ラベルのメソッドを変更するにはどうすればよいですか?

ラベルのテキストが変更されました:

- (void)viewDidLoad{
label.text = @"testing";
}

ただし、ここではラベルは変更されていません

- (void)anothermethod
{
label.text = @"testing";
}

Anothermethodまた、viewDidLoad 以外の method( ) のこの変更も確認する必要があります。

4

3 に答える 3

0

1) 他の方法で、ラベルが nil でないことを確認してください。nil の場合は、メモリにオブジェクトがないことを意味します。

2) nil を取得している場合は、プロパティを設定してから、self.label.text = @"your text" で確認してください

3) [self anothermethod];.viewDidLoad が自動的に呼び出されるため、コメントで示唆されているように、必要な場所でこのメソッドを呼び出します。

于 2013-10-07T11:17:35.280 に答える
0

anothermethodビューがロードされる前にあなたが呼び出されたようlabelですnil

于 2013-10-07T11:21:19.500 に答える
-1

あなたの答えに感謝しますが、私は私の問題を解決しました。静的メソッドを定義し、Label の値を変更できるようにしたいと考えています。

@implementation ViewController
static UILabel *label;

- (void)anothermethod
{
label.text = @"testing";
}

今回は正常に動作しています

于 2013-10-08T06:25:33.447 に答える