質問

Tabbarには2つのView Controllerがあり、どちらもデータを編集できます。したがって、ユーザーがタブバーを切り替えるたびにreload_data関数を呼び出す必要があります。ビューコントローラーの切り替えまたは外観をどのようにキャッチできますか?どういうわけか、viewDidAppearはタブバースイッチで呼び出されません。また、このためにtabbarControllerデリゲートを使用したくないのは、いくつかのviewControllerが影響を受けるためです(すべてをデリゲートとして設定することはできません)。これを解決する良い方法は何ですか?

e.g。これは機能しませんでした:

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:YES];
    [self reloadData];
}

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:YES];
    [self reloadData];
}
役に立ちましたか?

解決

Interface Builderを使用している場合、リロードする予定のviewControllerのクラスが定義されていることを確認してください(IBでViewControllerを選択し、次にCMD-4、viewWillAppearおよびviewDidAppearのクラスに定義されていることを確認してくださいに呼び出されます)。

IBを使用していない場合は、initのコードを投稿/ viewControllerを呼び出します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top