【发布时间】:2018-01-29 12:07:54
【问题描述】:
我已经使用了许多示例来实现列表视图中的搜索,但它们都不起作用。我有一个来自 JSON 数组的列表视图绑定,我想实现一种简单的方法来搜索列表视图中的项目。我在互联网上找到了一些示例,但它们不起作用。 我正在使用 Xamarin Android。
主活动:
DaftarGaleri = FindViewById<ListView>(Resource.Id.dataList);
itemGaleri = new List<Galeri>();
var webClient = new WebClient();
webClient.DownloadStringAsync(BaseUri);
progress = FindViewById<ProgressBar>(Resource.Id.progressBar);
//Showing loading progressbar
progress.Visibility = ViewStates.Visible;
webClient.DownloadStringCompleted += WebClient_DownloadStringCompleted;
}
private void WebClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
RunOnUiThread(() =>
{
itemGaleri = JsonConvert.DeserializeObject<List<Galeri>>(e.Result);
CustomListAdapter adapter = new CustomListAdapter(this, itemGaleri);
DaftarGaleri.Adapter = adapter;
progress.Visibility = ViewStates.Gone;
DaftarGaleri.ItemClick += DaftarGaleri_ItemClick;
}
);
}
customlistadapter 类:
public class CustomListAdapter : BaseAdapter<Galeri>
{
public CustomListAdapter()
{
}
Activity context;
List<Galeri> list;
public CustomListAdapter(Activity _context, List<Galeri> _list) : base()
{
this.context = _context;
this.list = _list;
}
public override int Count
{
get { return list.Count; }
}
public override long GetItemId(int position)
{
return position;
}
public override Galeri this[int index]
{
get { return list[index]; }
}
public override View GetView(int position, View convertView, ViewGroup parent)
{
View view = convertView;
// re-use an existing view, if one is available
// otherwise create a new one
if (view == null)
view = context.LayoutInflater.Inflate(Resource.Layout.item, parent, false);
Galeri item = this[position];
view.FindViewById<TextView>(Resource.Id.productname).Text = item.meta_title;
view.FindViewById<TextView>(Resource.Id.category).Text = item.model;
view.FindViewById<TextView>(Resource.Id.description).Text = item.description;
using (var imageView = view.FindViewById<ImageView>(Resource.Id.Photo))
{
string url = Android.Text.Html.FromHtml("http://www.termamed.com/store/image/"+item.image).ToString();
//Download and display image
Koush.UrlImageViewHelper.SetUrlDrawable(imageView,url, Resource.Drawable.products);
}
return view;
}
谁能帮忙..谢谢
【问题讨论】:
-
您能描述一下您遇到的错误吗?
-
您绝对必须说出您尝试了哪些示例,因为这里的人们会浪费时间写答案,建议您已经尝试过什么。