0

iOSプロジェクトでは、ページにロードするのに時間がかかるリストビューがあります。私はhereのように荷物の積み重ねを表示したいが、ロードするまでページ全体を無効にしている。私は、ユーザーが読み込みプロセス中にしたい場合にナビゲーションボタンを使用して戻るようにしたいと思います。Xamarin iOS:画面上にロゴが表示されているときに、ビューをアクティブに保つ方法

私が今使っているコードは次のとおりです。

var bounds = UIScreen.MainScreen.Bounds; 
loadPop = new LoadingOverlay (bounds); 
View.Add (loadPop); 
loadingOverlay.Hide(); 

は、ページがまだ読み込み記号が表示され、データがまだロードされている間、私はページを切り替えるには、ユーザーの使用ナビゲーションを聞かせすることができます方法はありますか?

+0

ユーザーが離れて移動できるようにしたいのですが、画面全体をローディングビューでカバーするのはなぜですか? – rebello95

+0

特定のビューのバインドを設定することは可能ですか?つまり、リストビューのみで、ユーザーが選択した場合に戻ることができますか?はいの場合はどうすれば設定できますか? – TheDeveloper

答えて

1

実際はとても簡単です。リストの上にビュー(スピナー付き)を追加するだけで、データがロードされると手動で非表示にする必要があります。 あなたはまだそのLoadingOverlayサンプルを使用する場合は、境界引数を変更します。

var navigationBarHeight = 48; // not sure what´s the actual height. Google it! 
var bounds = UIScreen.MainScreen.Bounds; 
loadPop = new LoadingOverlay (new CGRect(bounds.X, navigationBarHeight, bounds.Width, bounds.Height - navigationBarHeight); 
View.Add (loadPop); 

あなただけのスピナーが必要な場合、あなたはまた、リンクあなたの提供からいくつかのコードを取ることができます:あなたの場合は

activitySpinner = new UIActivityIndicatorView(UIActivityIndicatorViewStyle.WhiteLarge); // change color here 
activitySpinner.Frame = new CGRect (
       centerX - (activitySpinner.Frame.Width/2) , 
       centerY - activitySpinner.Frame.Height - 20 , 
       activitySpinner.Frame.Width, 
       activitySpinner.Frame.Height); 
activitySpinner.AutoresizingMask = UIViewAutoresizing.All; 
AddSubview (activitySpinner); 
activitySpinner.StartAnimating(); 
+0

ありがとうございます。私は 'LoadingOverlay'サンプルを使用する必要はありません。あなたが言及したように(スピナー付きの)ビューを追加するにはどうすればよいですか? – TheDeveloper

+0

私の回答を更新しました – xleon

関連する問題