从选定的项目中获取价值

问题描述 投票:0回答:1

我想从列表中的选定项目中获取值。我想从列表中的选择项中获取值,该怎么做呢?

private List<string> selected = new List<string>();`
var list = this.FindViewById<ListView>(Resource.Id.listOne);
adapterData = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleListItem1);
list.Adapter = adapterData;
xamarin.android android-listview
1个回答
0
投票

默认情况下,当你点击一个ListView项目时,它不会将其状态改为 "选中"。所以,当事件发生时,你做了。

list.SelectedItem;

这个方法没有任何东西可以返回。你要做的是使用位置,并通过做来获得底层对象。

list.GetItemAtPosition(position);

UPDATE

得到你的listView项目点击像下面。

mListView.ItemClick += MListView_ItemClick;

并在你的 MainListView_ItemClick 当你进行以下操作时,你将得到你的位置作为一个整数 e.Position

好运!


0
投票

你只需要监听项目的点击事件,然后通过它的位置来获取价值。

例如

private List<string> selected = new List<string>();
private ListView listView;

listView = FindViewById<ListView>(Resource.Id.listOne);
selected.Add("AAA");
selected.Add("BBB");
selected.Add("CCC");
selected.Add("DDD");
var adapterData = new ArrayAdapter<string>(this,Android.Resource.Layout.SimpleListItem1,selected);
listView.Adapter = adapterData;
listView.ItemClick += ListView_ItemClick;

private void ListView_ItemClick(object sender, AdapterView.ItemClickEventArgs e)
    {
        string s = (string)listView.GetItemAtPosition(e.Position);//here you could get the value
        Toast.MakeText(this, s, ToastLength.Short).Show();
    }
© www.soinside.com 2019 - 2024. All rights reserved.