我发现在我的getView顶部实施了横幅广告时出现了逻辑错误。问题是横幅覆盖了我的listView的第一项。其他一切似乎都按预期工作。以下是我的代码。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
Log.i("testing", "pos " + position);
if (position == 0) {
if (convertView instanceof AdView) {
// Don’t instantiate new AdView, reuse old one
return convertView;
} else {
Context mainActivity = getActivity();
adView = new AdView(mainActivity);
adView.setAdUnitId(AD_UNIT_ID);
adView.setAdSize(AdSize.BANNER);
// Convert the default layout parameters so that they play nice with
// ListView.
float density = mainActivity.getResources().getDisplayMetrics().density;
int height = Math.round(AdSize.BANNER.getHeight() * density);
AbsListView.LayoutParams params = new AbsListView.LayoutParams(
AbsListView.LayoutParams.FILL_PARENT,
height);
adView.setLayoutParams(params);
AdRequest adRequest = new AdRequest.Builder()
.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
.addTestDevice("TEST_DEVICE_ID")
.build();
adView.loadAd(adRequest);
return adView;
}
} else {
convertView = getSherlockActivity().getLayoutInflater()
.inflate(R.layout.list_item_bxied,null);
// Enter the view of this Bxied Attack
// If we weren't given a view, inflate one
// Enter the view of this Bxied Attack
Bxied c = (Bxied)getItem(position);
TextView titleTextView =
(TextView)convertView.findViewById(R.id.bxied_list_item_titleTextView);
titleTextView.setText(c.getTitle());
TextView dateTextView =
(TextView)convertView.findViewById(R.id.bxied_list_item_dateTextView);
dateTextView.setText(DateFormat.format("EEEE, MMM dd, yyyy hh : mm a", c.getDate()).toString());
CheckBox resolvedCheckBox =
(CheckBox)convertView.findViewById(R.id.bxied_list_item_resolvedCheckBox);
resolvedCheckBox.setChecked(c.isResolved());
}
return convertView;
}
}
如果你知道答案,如果你能包含一些可以解决这个问题的代码,我会很感激。列表中的第一项应位于广告标题下。
这是XML:
<code>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<CheckBox
android:id="@+id/bxied_list_item_resolvedCheckBox"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:gravity="center"
android:layout_alignParentRight="true"
android:enabled="false"
android:focusable="false"
android:padding="2dp"
/
<TextView
android:id="@+id/bxied_list_item_titleTextView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_toLeftOf="@id/bxied_list_item_resolvedCheckBox"
android:textStyle="bold"
android:paddingLeft="4dp"
android:paddingRight="4dp"
android:text="@string/bxied_title"
/>
<TextView
android:id="@+id/bxied_list_item_dateTextView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/bxied_list_item_titleTextView"
android:layout_toLeftOf="@id/bxied_list_item_resolvedCheckBox"
android:paddingLeft="4dp"
android:paddingRight="4dp"
android:top="4dp"
android:text="Date"
/>
</RelativeLayout>
</code>