我有一个 ListView,其中每一行都是一个 TextView,并显示一行文本。我遇到了一个问题,有时会出现不需要的空行。一旦列表滚动经过该特定区域,空行就会消失。
在调试器中暂停应用程序后,我使用以下代码验证了我的列表行包含正确的信息。输出中没有任何内容显示为空或 null 等。
for (int i = 0; i<list.getChildCount(); i++) {
System.out.print((TextView) list.getChildAt(i)).getText());
}
这显示了我预期的信息。
我还检查了支持我的适配器的数据是否有空条目、新行等。
我在 Adapter 中的 getView() 方法如下:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView t;
if (convertView == null) {
convertView = mInflator.inflate(R.layout.single_message_row, null);
t = (TextView) convertView;
t.setMovementMethod(LinkMovementMethod.getInstance());
t.setTextSize(mMsgSize);
}
else {
t = (TextView) convertView;
}
CharSequence text = get(position);
t.setText(text);
return t;
}
下面是演示问题的图像(红色区域):