0

Xcode で、「bad text」というテキストを含むボタンを持つ単一ビュー アプリケーションを作成しました。

このボタンのテキストが、アプリがロードされたときに「良いテキスト」になることを望みます。

この目的のために :

  • このボタンからコントローラーへのアウトレットを作成しました
  • ボタンの setTitle を呼び出す「ロード」メソッドをコントローラーに追加しました
  • でコントローラーの「ロード」を呼び出しました(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

アプリを起動すると、loadが呼び出されますが、ボタンのテキストは変わりません。ボタンのテキストを後で変更すると、たとえばユーザーがボタンをクリックしたときに機能します。

私の仮説は、loadが呼び出されたとき、アウトレットはまだ作成されていないというものです。本当ですか?どうすればこれを解決できますか?

[編集] AppDelegate のコードは次のとおりです。

FreqViewController* mainController = (FreqViewController*) self.window.rootViewController;
[mainController load];
return YES;

AppDelegate にコードを入れるべきではないことを知りませんでした。では、コントローラーがロードされたときに何かを行うにはどうすればよいですか?

4

1 に答える 1

2

あなたのviewControllerにbe'nメソッドを追加します

-(void)viewDidAppear:(BOOL)animated
{
    [yourButton setTitle:@"new title" forState:UIControlStateNormal];

}

アプリケーションが表示されると、タイトルが変更されます。

于 2013-07-08T09:22:12.890 に答える