Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从json加载到listview会导致应用程序在滚动时不响应。沙马林,安卓_C#_Json_Listview_Http_Xamarin.android - Fatal编程技术网

C# 从json加载到listview会导致应用程序在滚动时不响应。沙马林,安卓

C# 从json加载到listview会导致应用程序在滚动时不响应。沙马林,安卓,c#,json,listview,http,xamarin.android,C#,Json,Listview,Http,Xamarin.android,我正在从json(带图像)加载一个巨大的数据到我的列表视图,这会导致我的应用程序在滚动时没有响应,但如果我在模拟器上按wait。。我可以滚动它,但它使我的应用程序非常滞后。。然而。我的应用程序中有一个detailactivity,它也是来自我的json。单击我的listview中的1项并继续执行我的详细信息活动后,延迟消失。对此有什么解决方法吗?我把json文件的链接放在下面。我想我的滚动视图很难加载我的图像。。当我做研究时,它说我应该在将图像转换为字节时记忆缓存。。但是怎么做呢O 下面是我如何

我正在从json(带图像)加载一个巨大的数据到我的列表视图,这会导致我的应用程序在滚动时没有响应,但如果我在模拟器上按wait。。我可以滚动它,但它使我的应用程序非常滞后。。然而。我的应用程序中有一个detailactivity,它也是来自我的json。单击我的listview中的1项并继续执行我的详细信息活动后,延迟消失。对此有什么解决方法吗?我把json文件的链接放在下面。我想我的滚动视图很难加载我的图像。。当我做研究时,它说我应该在将图像转换为字节时记忆缓存。。但是怎么做呢O

下面是我如何将图像转换为字节的

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;
    }        
}
以下是一些提示

  • 减小图像的大小或对其进行压缩
  • 进行分页,即在数据块中加载数据,并在用户向下滚动时加载更多数据
  • 打开探查器,记录内存交叉危险标志的位置
    • 以下是一些提示

      • 减小图像的大小或对其进行压缩
      • 进行分页,即在数据块中加载数据,并在用户向下滚动时加载更多数据
      • 打开探查器,记录内存交叉危险标志的位置

        • 让我们为您处理。这是一个非常棒的著名图像缓存和压缩库。

          让我们为您处理它。这是一个非常著名的图像缓存和压缩库。

          您可以使用Piccaso进行异步图像下载和缓存。它工作得很好。

          您可以使用Piccaso进行异步图像下载和缓存。它运行得很好。

          @merbsanda很高兴知道这一点。如果其中一个答案对您有帮助,您可能希望将其标记为已接受。:)@梅尔班达很高兴知道这一点。如果其中一个答案对您有帮助,您可能希望将其标记为已接受。:)