2

AndroidアプリでVS 2012を使用しています。実際、私はこれを達成したい:

// lv = My listView Name. 
lv.setOnItemClickListener(new OnItemClickListener() 
{ 
    public void onItemClick(AdapterView<?> myAdapter, View myView, int myItemInt, long mylng) 
    {      
        String selectedFromList =(String) (lv.getItemAtPosition(myItemInt));
    }
});

しかし、私はsetOnItemClickListener()イベントを取得していません。理由は、私はXamarinを使用して C# で作業しているためです。ListViewの選択値または項目を取得したい。どうすればこれを行うことができますか?

4

3 に答える 3

13

アクティビティに ListView.IONItemClickListener を次のように実装させます。

public class SomeActivity: Activity, ListView.IOnItemClickListener

次のようにリストビューへの参照を取得します。

LsitView LV = FindViewById<ListView>(Resource.Id.id_in_axml);

次に、インターフェイス ListView.IONItemClickListener を実装するため、OnItemClickListner をアクティビティに設定します。

lstItems.OnItemClickListener = this;

最後に、これをアクティビティ クラスに追加します。

public void OnItemClick(AdapterView parent, View view, int position, long id)
{
//whatever you need it to do goes here.
}
于 2013-10-16T20:33:32.580 に答える
4

完全なコード スニペットは次のとおりです。

    private List<String>namess;
    private ListView listvieww;
    protected override void OnCreate (Bundle bundle)
    {
        base.OnCreate (bundle);

        SetContentView (Resource.Layout.Main);

        listvieww = FindViewById<ListView> (Resource.Id.listView1);


        namess = new List<String>();

        namess.Add("Security Solution");
        namess.Add("software");
        namess.Add("hardware");
        ArrayAdapter<String> adapter = new ArrayAdapter<String> (this, Android.Resource.Layout.SimpleListItem1,namess);

        listvieww.Adapter = adapter;
        //listvieww.ItemClick += listView_ItemClick;


        listvieww.ItemClick += (object sender, Android.Widget.AdapterView.ItemClickEventArgs e) =>
        {
            string selectedFromList = listvieww.GetItemAtPosition(e.Position).ToString();

            Console.WriteLine( selectedFromList);
        };

    }
于 2015-06-08T10:43:03.273 に答える
3

次のように、ItemClick とデリゲートを使用して、イベント コードを配置できます。

lv.ItemClick += delegate(object sender, Android.Widget.AdapterView.ItemClickEventArgs e)
{
    //Your code here
}
于 2015-02-06T02:26:57.677 に答える