【发布时间】:2017-08-10 18:26:01
【问题描述】:
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;
}
}
请帮帮我。
【问题讨论】:
-
分享你的代码。
-
@MuthukrishnanRajendran 编辑了我的问题
-
分享convertView==null条件块中的代码
-
@Reena 更新了区块内的代码 sn-p
-
对不起,我不知道 abt C# 但是你在哪里初始化上下文全局..?你遇到什么崩溃了吗?
标签: c# android baseadapter android-gridview