首页 > 解决方案 > 获取单击的列表视图文本 Xamarin Android

问题描述

我的代码:

private ListView lvSites;
private List<string> siteList;

protected override void OnCreate (Bundle bundle){ 
        base.OnCreate (bundle);
        RequestWindowFeature(WindowFeatures.NoTitle);
        // Set our view from the "main" layout resource
        SetContentView (Resource.Layout.Main);

        lvSites = FindViewById<ListView>(Resource.Id.lst_Sites);

        lvSites.ItemClick += lstSites_ItemClick;
}

private void lstSites_ItemClick(object sender, AdapterView.ItemClickEventArgs e){
    Site = e.ToString();
    Toast.MakeText(this, Site, ToastLength.Long).Show();
}

e 不会给我文本,但我可以获得位置 id,有什么可以从中提取文本吗?

我想在 lvSites 项目单击时拉出字符串。

我似乎无法回答或关闭。但我这样做了

Site = siteList[e.Position].ToString();

标签: c#xamarinxamarin.android

解决方案


使用下面的代码来获取listview点击的项目

protected override void OnCreate(Bundle savedInstanceState)
{
    base.OnCreate(savedInstanceState);
    SetContentView(Resource.Layout.activity_main);           
    var adapter = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleListItem1, dataSource);
    var listview = FindViewById<ListView>(Resource.Id.listView1);
    listview.Adapter = adapter;
    listview.ItemClick += delegate(object sender,AdapterView.ItemClickEventArgs e)
    {
        var item = adapter.GetItem(e.Position);
    };
}

希望对您有所帮助。


推荐阅读