Android 在自定义适配器中替换另一个视图位置的视图
我有一个图片列表,我正在展示,使用通用图像加载器,现在我试图在位置4之间放置一个广告,但这个广告正在替换该位置的图像。。当查看位置和URL时,一切似乎都正常。自定义适配器是否有问题?还是可以在xml中执行某些操作Android 在自定义适配器中替换另一个视图位置的视图,android,android-listview,custom-adapter,listview-adapter,android-viewholder,Android,Android Listview,Custom Adapter,Listview Adapter,Android Viewholder,我有一个图片列表,我正在展示,使用通用图像加载器,现在我试图在位置4之间放置一个广告,但这个广告正在替换该位置的图像。。当查看位置和URL时,一切似乎都正常。自定义适配器是否有问题?还是可以在xml中执行某些操作 @Override public View getView(int position, View convertView, ViewGroup parent) { int type = getItemViewType(position); Sy
@Override
public View getView(int position, View convertView, ViewGroup parent) {
int type = getItemViewType(position);
System.out.println(position+" "+urls.get(position));
if (convertView == null)
{
holder = new ViewHolder();
switch (type)
{
case TILBUD:
convertView = mInflater.inflate(R.layout.image_row, null);
holder.imageView = (ImageView)convertView.findViewById(R.id.image_row);
imageLoader.displayImage(urls.get(position), holder.imageView, options);
break;
case AD_SPACE_1:
convertView = mInflater.inflate(R.layout.ad_space_row_1, null);
adSpace1 = (AdSpace)convertView.findViewById(R.id.ad_row_1);
adSpace1.setSID(returnSID(store, "ad1"));
adSpace1.setAdEventListener(adEventListener);
adSpace1.setAdErrorEventListener(adErrorListener);
adSpace1.setAdAnimationEventListener(adAnimationListener);
adSpace1.setAdMediaEventListener(adMediaEventListener);
holder.adSpace1 = adSpace1;
adSpace1.runAd();
break;
case AD_SPACE_2:
convertView = mInflater.inflate(R.layout.ad_space_row_2, null);
adSpace2 = (AdSpace)convertView.findViewById(R.id.ad_row_2);
adSpace2.setSID(returnSID(store, "ad2"));
adSpace2.setAdEventListener(adEventListener);
adSpace2.setAdErrorEventListener(adErrorListener);
adSpace2.setAdAnimationEventListener(adAnimationListener);
adSpace2.setAdMediaEventListener(adMediaEventListener);
holder.adSpace2 = adSpace2;
adSpace2.runAd();
break;
}
convertView.setTag(holder);
}
else
{
holder = (ViewHolder)convertView.getTag();
}
return convertView;
}
}
public static class ViewHolder
{
public ImageView imageView;
public AdSpace adSpace1, adSpace2;
}
广告位置有问题,需要ad1上的+1和ad2上的+2。尝试在xml图像后定义一个布局,并基于位置,如位置%4==0,在getView中尝试此布局。@Haresh尝试了此操作,但没有更改任何内容:/