2011-01-25 3 views
1

NavigationController、いくつかのImageViewがあるルートビュー、標準のカスタマイズされた/サブクラス化されたTableViewsおよびTableViewCellsを持つMonoTouchアプリケーションで現在作業しています。いくつかの要素はxibファイルにあり、他の要素はコードのみです。ビューをナビゲートしたり、テーブルビューの内容を読み込んだりするときに奇妙なアニメーションが表示される

ナビゲーションとテーブルの内容自体は正常に動作します。しかし、私はいくつかの奇妙な "アニメーション"効果に苦しんで...私はできるだけそれらを記述するために最善を尽くしています。

1) ナビゲーションスタック上を前後にナビゲートすると、ビューが表示されるたびに、そのビューのアイテムが再レイアウトされたように見えます。サブビューからルートビューにナビゲートするとき、ImageViewsはどこにいてもいけない場所から始め、正しい場所にスライドします。

2) TableViewCellsアニメーションなしリロード場合でも、可視領域に現れる場合に上から下にその内容を「明らかにする/展開」:

TableView.ReloadSections(new NSIndexSet(1), UITableViewRowAnimation.None); 

表を下にスクロール、各セルは、それがだトリガすると思われます目に見えるようになるとすぐに別々の "アンフォールディング"アニメーションを作成します。

3) TableViewsのスクロールバーは、ビューからスライドして表示されます。例えば

、スタック上の他のテーブルビューをプッシュセルタッピング:
- (それが必要ように)親テーブルは、右から左/サブテーブルスライドにアウトスライド
を - サブテーブル(テーブルの)上から下に向かって可視セルが展開されます
- 最後に、この奇妙なセルの展開が完了すると、スクロールバーが左側(親テーブル "is")からそれは右側の正しい場所です。親テーブルのスクロールバーを再利用しているようです。

4)

UIApplication.SharedApplication.NetworkActivityIndicatorVisible = true; 

...ネットワークアクティビティインジケータを表示する...それはネットワークキャリア名がどこにあるか表示されます(一番左のステータスバー上)とスライドそれが意図の位置には(信号強度インジケータの隣に)。同じことが "あなたがいるところにある"という矢印になります。 LocationManagerを起動すると、矢印がキャリア名に表示され、右にスライドします。

このアニメーションとスライドアクションはすべて、本当に刺激的で気を散らすものです。 AppStoreで他のMonoTouchアプリをチェックしましたが、これに悩まされている人はいません。

私のアプリケーションで何が間違っていますか? 私はこの奇妙な動作を引き起こす可能性のあることと、それを無効にする方法についてヒントを得て本当に感謝しています。

答えて

2

私はちょうど今日、これを持っていた - 私は

UIView.BeginAnimations("AnimationName"); 
UIView.SetAnimationDuration(0.5f); 
// and so on... 

を使用して私のアプリでは、いくつかのアニメーションを行っのだし、それは私が実際に使用して(私のアニメーションを犯していなかったが判明:

UIView.CommitAnimations(); 

確保私はCommitAnimations()と呼んでこの動作を取り除いた!

+0

うわー、そうだった。私はそれを考えなかっただろう...私はこれについてナッツをしようとしていた。あなたは私を救いました。 :)巨大な感謝の仲間! – riha

関連する問題