我現在用的是下面這段代碼來填充我的ListView -的Android - ListView中得到填充兩次
setListAdapter(new NotifListAdapter(this));
我把這個在我活動的onCreate()方法,並在第一時間就被創建,它填充很好。但是當我回到這個活動時,它會在列表中顯示兩倍的行數!我檢查了我的數據庫,它絕對不是後端問題。另外,當我強制關閉活動並重新啓動它時,它會填充正常。任何人都可以提供對這個問題的見解嗎?
如果這是列表適配器 -
public class NotifListAdapter extends BaseAdapter {
public NotifListAdapter(Context context) {
mContext = context;
}
public int getCount() {
return rnList.size();
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
NotifView nv;
RichNotification rn = rnList.get(position);
if (convertView == null) {
nv = new NotifView(mContext, rn.getSubject(),
rn.getContent(), rn.getDate());
} else {
nv = (NotifView) convertView;
nv.setTitle(rn.getSubject());
nv.setDialogue(rn.getContent());
nv.setDate(rn.getDate());
}
return nv;
}
/**
* Remember our context so we can use it when constructing views.
*/
private Context mContext;
@Override
public Object getItem(int position) {
return null;
}
}
rnList在哪裏設置?這可能會被填充兩次嗎? – 2011-06-13 13:45:45
唯一的建議是將Toast消息放入生命週期方法中,並放入getView()和getCount()中,看看命令 – damluar 2011-06-13 13:48:51