2017-03-08 8 views
0

私のリストビューにjson(画像あり)から膨大なデータがロードされていますが、スクロール時に応答しないアプリケーションが発生しますが、私のエミュレータで待ちます。スクロールできますが、アプリケーションは非常に遅れています。私は私のjsonからも私のアプリケーションで詳細な活動を持っています。私のリストビューで1つの項目をクリックして詳細アクティビティに進むと、遅れが消えてしまいます。私は以下の私のjsonファイルのリンクを入れました。私のスクロールビューは、画像を読み込むのに苦労していると思います。私の研究では、画像をバイトに変換する際にmemorycacheを実行する必要があります。 :O私はバイトに私の画像を変換HERESにどのようjsonからlistviewに大きな負荷がかかると、スクロール時にアプリが応答しなくなります。 xamarin.android

..

public class ImageHelper 
{ 
    public static Bitmap GetImageBitmapFromUrl(string url) 
    { 
     Bitmap imageBitmap = null; 

     using (var webClient = new WebClient()) 
     { 
      webClient.Headers.Add(System.Net.HttpRequestHeader.UserAgent, "Others"); 
      var imageBytes = webClient.DownloadData(url); 
      if (imageBytes != null && imageBytes.Length > 0) 
      { 
       imageBitmap = BitmapFactory.DecodeByteArray(imageBytes, 0, imageBytes.Length); 
      } 
     } 
     return imageBitmap; 
    }   
} 
ここ

My json file.

答えて

1

Piccaso https://components.xamarin.com/view/square.picassoを非同期イメージのダウンロードとキャッシュに使用できます。それはかなりうまくいく。

+0

ありがとうございました。すべてがうまく動作します:) –

+0

@merbsandaはそれを知ってうれしいです。それがあなたを助けた場合、回答の1つに合格とマークすることができます。 :) –

0

はいくつかのヒント

  • それ
  • ドゥの画像のサイズを減らすか、または圧縮されているがページング、つまりチャンク内のデータをロードし、ユーザーがスクロールするとさらに読み込みます。
  • 開いているプロファイラが何点でメモリクロス危険記号をメモします
1

FFImageLoadingを処理してください。イメージのキャッシュと圧縮のための素晴らしいライブラリです。

関連する問題