0
holder.voteUp.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        final int position = myList.getPositionForView((View) v
                .getParent());
        final ListItem li  = values.get(position);
        li.voteUp_value = true;
        //In getView(), I set different image to holder.voteUp ImageView depending on this value.
        //Hence I call notifyDataSetChanged(); which takes care of it.
        notifyDataSetChanged();
    }
});

しかし問題は、リスト全体が通知されるので、投票するたびにちらつくことです。

によっては変更しなければならない もあるため、 の画像をholder.voteUp直接変更することはできません。それで、私はこれをすべて処理するものに行きました。holder.voteDownli.voteUp_valuenotifyDataSetChanged();

代わりに、親ビューからビューを取得して画像を設定する方法はありnotifyDataSetChanged();ますか?

お気に入り:

ViewParent vp = v.getParent();
ImageView im = vp.findViewById(R.id.voteUp);
im.setImageResource.....

しかし、のようなものはありませfindViewByIdViewParent

4

1 に答える 1