Android:使用 parsequery 适配器在 listview 中更改 imageview 的图像
Posted
技术标签:
【中文标题】Android:使用 parsequery 适配器在 listview 中更改 imageview 的图像【英文标题】:Android: Change image of imageview in listview using a parsequery adapter 【发布时间】:2014-11-27 23:34:25 【问题描述】:我已经能够根据位置对ListView
中的每个特定项目做很多事情。现在,我正在尝试在ListView
中更改ImageView
的图像,但由于某种原因我不能。每次点击时,下方或上方几个位置的ImageView
就会发生变化。
我正在使用ParseQueryAdapter
。
public class MyCustomAdapter extends ParseQueryAdapter<ParseObject>
public MyCustomAdapter(Context context, String className,
int itemViewResource)
super(context, className, itemViewResource);
@Override
public View getItemView(final ParseObject status, View convertView, ViewGroup parent)
convertView = View.inflate(getActivity().getApplicationContext(), R.layout.status_list_view_item, null);
mListViewReferences(convertView, status);
statusText = (TextView) convertView.findViewById(R.id.statusText);
statusText.setText(status.getString("Status"));
// Set the count number for the like counter depending on the users that liked it
likeCounter = (TextView) convertView.findViewById(R.id.likeCounter);
likeCounter.setText("" + status.getInt("likeCount"));
................
return super.getItemView(status, convertView, parent);
/**
* Set References
* @param View view
* @param ParseObject status
*/
private void mListViewReferences(final View view, final ParseObject status)
statusLike = (ImageButton) view.findViewById(R.id.statusLike);
/**
* onClickListeners and actions to perform
*/
//Like/Unlike current status
statusLike.setOnClickListener(new OnClickListener()
@Override
public void onClick(View v)
/**
I want to do it in here, i want to change the image of "statusLike" in here depending on the position.
*/
);
我尝试了很多方法,并且我也将它包含在我正在使用的当前 if/else 语句中,但它仍然不起作用。 likeCount 有效,状态文本和标题也有效。除了更改当前子位置内的图像外,一切正常。
【问题讨论】:
【参考方案1】:我的做法是正确的,我只是错过了一个非常重要的步骤,即在 onClickListener 中包含 notifyDataSetChanged()。
【讨论】:
以上是关于Android:使用 parsequery 适配器在 listview 中更改 imageview 的图像的主要内容,如果未能解决你的问题,请参考以下文章
Android/Parse-如何处理来自 ParseQuery 的多个回调
Android - 解析查询.include(“key”)不返回完整的ParseObject详细信息