【问题标题】:Images in ListView xamarin (monodroid)ListView xamarin 中的图像(monodroid)
【发布时间】:2016-08-30 17:00:56
【问题描述】:
public class myAdapter : BaseAdapter<RootObject>
{
    readonly Activity context;
    List<RootObject> objects = new List<RootObject>();
    Bitmap bm;
    View view;
    ImageView iv;

    public myAdapter(Activity context, List<RootObject> objects)
    {
        this.context = context;
        this.objects = objects;
    }

    public override RootObject this[int position]
    {
        get { return objects[position]; }
    }

    public override int Count
    {
        get { return objects.Count; }
    }

    public override long GetItemId(int position)
    {
        return position;
    }

    public override View GetView(int position, View convertView, ViewGroup parent)
    {
        RootObject obj = objects[position];

        view = convertView;

        if (view == null) // no view to re-use, create new
        {
            view = context.LayoutInflater.Inflate(Resource.Layout.listItem, null);
        }

        WebClient wc = new WebClient();
        wc.DownloadDataCompleted += new DownloadDataCompletedEventHandler(web_DownloadDataCompleted);
        wc.DownloadDataAsync(new Uri(obj.imageUrl));

        iv = view.FindViewById<ImageView>(Resource.Id.Image);

        view.FindViewById<TextView>(Resource.Id.tvName).Text = obj.name;
        return view;
    }


    void web_DownloadDataCompleted(object sender, DownloadDataCompletedEventArgs e)
    {
        if (e.Error != null)
        {
        }
        else
        {
            Bitmap bm = BitmapFactory.DecodeByteArray(e.Result, 0, e.Result.Length);
            runonuithread(() =>
            {
                iv.setimagebitmap(bm);
          });
        }
    }

`我正在使用 xamarin (monodroid) 中的 listView。我的列表视图有一个自定义适配器。每个列表项都包含一个图像和文本视图。图片来自一个网址。在我的下载图像功能中,我使用的是 downloadDataAsync。但在下载图像之前,所有其他工作都已完成,并且我的适配器的 GetView 方法返回视图,没有图像,只有文本。返回视图后,有什么方法可以更新该图像资源。我实际上想首先显示所有 textViews,与图像并行继续下载。 提前致谢

【问题讨论】:

  • 嗨@Naila 你能至少提供你的部分代码吗?将是一个很好的开始......
  • @EliasMP 我已经用代码编辑了我的问题。我们将不胜感激您的帮助。

标签: listview xamarin xamarin.android


【解决方案1】:

AQuery 库解决了我的问题。希望它也适用于其他人。

【讨论】:

    猜你喜欢
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-25
    • 1970-01-01
    • 2019-06-13
    相关资源
    最近更新 更多