简体   繁体   English

Listview Click Item Click Listener不会在xamarin.android中触发

[英]Listview Click Item Click Listener doesnt trigger in xamarin.android

I'm making an application in Xamarin android where ,I had items in ListView using ArrayAdapter. 我正在Xamarin android中制作一个应用程序,其中使用ArrayAdapter在ListView中有项目。

While on clicking on item of ListView the trigger doesn't respond to it. 在单击ListView的项目时,触发器不会对其做出响应。 I have gone through other solutions reference through this site , but didn't work for me. 我已经通过该站点浏览了其他解决方案参考,但是对我没有用。

My code as follows. 我的代码如下。

Fragment2.cs Fragment2.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Util;
using Android.Views;
using Android.Widget;

namespace NavigationDrawerTest
{
    public class Fragment2 : Android.Support.V4.App.Fragment 
    {
        private List<string> mItems;
        private ListView mListView;

        public override void OnCreate (Bundle savedInstanceState)
        {
            base.OnCreate (savedInstanceState);
            //SetContentView (Resource.Layout.Fragment2_Layout);

        }

        public override View OnCreateView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            View view = inflater.Inflate(Resource.Layout.Fragment2_Layout, container, false);
            mListView = view.FindViewById<ListView>(Resource.Id.myListView);

            mItems = new List<string> ();
            mItems.Add ("One");
            mItems.Add ("Two");
            mItems.Add ("Three");
            mItems.Add ("Four");
            mItems.Add ("Five");

            ArrayAdapter <string> adapter = new ArrayAdapter<string> (Context, Android.Resource.Layout.SimpleListItem1,objects: mItems.ToArray());
            mListView.Adapter = adapter;
            mListView.ItemClick += mListView_ItemClick;


            return view;
        }
        void mListView_ItemClick(Object sender, AdapterView.ItemClickEventArgs e)
        {
            Console.WriteLine(mItems[e.Position]);
        }

    }
}

The image as follows where the ListView ItemClickListener doesn't trigger. 图像如下,其中ListView ItemClickListener不触发。

ListView Item Click Listener ListView项目单击侦听器

I got my answer by slightly in change in code of Fragment2.cs 我对Fragment2.cs的代码稍作更改就得到了答案

Code as follows. 代码如下。

void mListView_ItemClick(Object Sender, AdapterView.ItemClickEventArgs e)
{
            var item = mItems [e.Position];
            Toast.MakeText(Context, item + " Clicked!", ToastLength.Short).Show();
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM