0

私は Xamarin を使用して iOS 用の UITabBarController ベースのアプリケーションに取り組んでおり、iOS 7.0 との互換性のために比較的小さな変更を加えているときに、解決できない特に厄介な問題を見つけました。

UITabBarController を構成する多くのビュー コントローラーには、別のビュー コントローラーをモーダルに表示し、画面の下部から上にスライドさせる必要がある領域があります。iOS 6.1 では、すべて正常に動作します。

ただし、iOS 7 では、表示されたビュー コントローラーが閉じられると、その下にある UITabBarController が最初 (一番左) のタブに戻ることに気付きました。入力した進行状況や情報が失われるため、これは非常に問題があります。

誰かがこの問題を経験したか、うまくいけば解決策を見つけましたか?

4

1 に答える 1

0

恥ずかしいことに、私は問題の原因を見つけました。この問題を修正するには: UITabBar の外観 setSelectionIndicatorImage が iOS7 の初回起動時に機能しない

UITabBarController のViewWillAppearオーバーライド メソッドでこのコードを実行しました。

if ( Session.IsiOS7 )
{
    this.SelectedIndex = 1;
    this.SelectedIndex = 0;
}

これは、iOS 7 のデフォルトでは表示されない選択インジケーター イメージをタブ バーに強制的に表示するために使用されています。また、この問題が発生することもあります。これをすぐに考えなかったなんて信じられない。

于 2013-09-24T01:51:58.160 に答える