1

これは他の場所でカバーされている可能性がありますが、適切な/機能する答えが見つからないか、何が起こっているのか理解していません.

マップ ビューを備えた VC があります。メイン ビューを (マップからリスト、グリッドに) 変更するために、iOS マップ アプリと同じようにボタンを表示するページ カールがあります。

ページ カールの下にあるボタンの 1 つを選択すると、マップ ビューに出入りする場合 (基本的には、現在表示されているビュー コントローラーを閉じるだけです)、すべて正常に動作します。しかし、リストからグリッド、またはグリッドからリストに移動しようとすると、次のようになります。

    Attempt to present <a ViewController: 0x9d2f280> on <parent ViewController: 0xc080bd0> whose view is not in the window hierarchy!

たとえば、リスト ビューの VC にハンドラーがあり、グリッド ボタンのクリックを処理します。これにより、ページのカールが解除され、親 (VC を提示する) にコールバックされて作業が行われます。これは次のとおりです。

    [self performSegueWithIdentifier:@"mySegue" sender:self];

ロジックは正しいようですが、ビュー階層にない親 VC ビューを取得し続けます。

私は何を間違っていますか?

4

0 に答える 0