首页 文章

即使列表计数大于0,也不会调用BaseAdapter.GetView方法

提问于
浏览
-1

public override View GetView(int position,View convertView,ViewGroup parent)

即使计数大于零,也不会调用此方法 .

我想知道GridView和BaseAdapter的确切行为 .

我尽可能多地尝试但是没有触发GetView方法 .

代码片段:

internal class SymbolAdapter : BaseAdapter
    {

        private object[] m_items;
        internal SymbolAdapter(Context context, Object[] items) : base()
        {
            this.context = context;
            m_items = items;
        }

        public override int Count
        {
            get
            {
                return m_items.Count;
            }
        }

        public override Java.Lang.Object GetItem(int position)
        {
            return null;
        }

        public override long GetItemId(int position)
        {
            return 0;
        }

        public override View GetView(int position, View convertView, ViewGroup parent)
        {
            View view = null;
            object item = m_items[position];
            if (convertView == null)
            {
                                    ImageView imageView = new ImageView(context);
                imageView.LayoutParameters = new AbsListView.LayoutParams(85, 85);
                imageView.SetScaleType(ImageView.ScaleType.CenterCrop);
                imageView.SetPadding(8, 8, 8, 8);
                view = imageView;
            }
            else
                view = convertView;
            return view;
        }
    }

请帮我 .

1 回答

  • 0

    当我尝试在为BaseAdapter创建实例之前将视图添加到GridView的Adapter属性时,问题得以解决 .

    谢谢,

相关问题