BaseAdapter.GetView 即使列表计数大于 0 也不会调用方法
BaseAdapter.GetView method is not called even if the list count is greater than 0
public 覆盖 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;
}
}
请帮帮我
当我尝试在为 BaseAdapter 创建实例之前将视图添加到 GridView 的适配器 属性 时,问题已解决。
谢谢,
public 覆盖 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;
}
}
请帮帮我
当我尝试在为 BaseAdapter 创建实例之前将视图添加到 GridView 的适配器 属性 时,问题已解决。
谢谢,