我有一个模拟聊天的android程序。对于它我使用一个列表,列表的项目在这个布局中名为XML
的{{1}}文件中我必须线性布局,在每个文件中我有一个activity_chat_conversation
和一个{{ 1}}。
代码:
EditText
填充列表我创建了一个适配器,在其中我设置了应该显示的线性布局。
代码:
ImageView
当我将新项目添加到列表并为其设置可见性时,之前的项目可见性将会更改。
我怎么能解决这个问题?
答案 0 :(得分:1)
这是因为convertView ==以前的getView()
方法。您需要刷新新项目的参数。例如:
if(pmUser == CurrentUser)
{
llto.setVisibility(0);
textViewTo.setVisibility(0);
imageViewTo.setVisibility(0); //this
llfrom.setVisibility(8);
textViewFrom.setVisibility(8);
imageViewFrom.setVisibility(8);
textViewTo.setText(globalVars.conversations.get(searchUser).
getConversation().get(position).getText());
textViewTo.setHeight(30);
}
else
{
llfrom.setVisibility(0);
textViewFrom.setVisibility(0);
imageViewFrom.setVisibility(0); // this
llto.setVisibility(8);
textViewTo.setVisibility(8);
imageViewTo.setVisibility(8);
textViewFrom.setText(globalVars.conversations.get(searchUser).
getConversation().get(position).getText());
}