2017-06-04 7 views
0

画像用のカスタムレンダラを使用するAndroid用のXamarinフォームアプリケーションがあります。私はこれらの画像をビットマップがメモリ内で約600kbしかなく、InSampleSizeで最適化しましたが、ポップインに問題があります。つまり、私がMasterDetailPageからこれらの画像を使ってページを開くと、画像は高速に読み込まれますが、ページが表示されてから100-200msの間に表示されます。Xamarinフォームカスタムレンダラを使用したポップアップ

ここで私は私がやりたい何か私のMasterDetailPage

private void Button_Clicked(object sender, EventArgs e) 
{ 
    var temp = new NavigationPage(new Pages.HomePage()); 
    Detail = temp; 
    IsPresented = false; 
} 

にページをロードしています方法ですが、可能な場合は、ページを事前にレンダリングし、それをカバーするためにUIにナビゲートされる前に、ポップイン、または本質的にそれを完全に除去する他の解決策である。

答えて

0

通常Xamarinは、人々がFFImageLoadingライブラリ

  • Xamarin.iOS、Xamarin.Android、Xamarin.FormsおよびWindows(WinRTの、UWP) サポート
  • 設定可能なディスクとメモリキャッシュ
  • 複数を使用してフォームに同じイメージソース(URL、パス、リソース)がメモリにキャッシュされているだけで1つのビットマップ(少ないメモリ使用量)を使用します
  • 同様のダウンロード/ロード要求の重複排除機能を使用して画像ビュー。
  • エラーや読み込みプレースホルダが
  • イメージをサポートし、自動的に指定したサイズ(より少ないメモリ使用量)
  • にダウンサンプリングすることができます(100の同様の要求が同時に到着した場合99人の他人 をお待ちしておりますが、一方で、その後1つの実ロードが実行されます)ピカソの命名SVG & WEBPサポートに触発され流暢APIは、フェードインアニメーションが
  • をサポート
  • 画像の読み込みは、イメージのダウンロード(RetryCountの、はretryDelay)
  • にAndroidのビットマップの最適化を再試行することができます。可能な場合は透明度チャネルを使用しないようにしようとすることによって、メモリの50%を保存します。
  • の変換は、あなたが見つけることができるBlurredTransformation CircleTransformation、 RoundedTransformation、CornersTransformation、CropTransformation ColorSpaceTransformation、GrayscaleTransformation、 SepiaTransformation、TintTransformation FlipTransformation、 RotateTransformation
  • は、カスタム変換(ネイティブプラットフォーム ITransformation実装)をサポートし

Hereをサポートいくつかのドキュメント

関連する問題