我有ListView,它有一个使用ImageButton(btnAdd)的布局。
我遇到的问题是当我按下ListView中填充的布局中的ImageButton时,ImageButton应该将其背景从灰色更改为绿色。
此操作正常,但当ListView中有多个项目时,ImageButton背景会在底部ListView项目上发生更改,而不一定会点击ListView的ImageButton。
我错过了什么?我应该在ListView中引用该项目的位置吗?
@Override
public View getItemView(final ParseUser pUser, View v, ViewGroup parent) {
if (v == null) {
v = View.inflate(getContext(), R.layout.search_detail, null);
}
super.getItemView(pUser, v, parent);
ParseImageView todoImage = (ParseImageView) v
.findViewById(R.id.imageViewSearch);
ParseFile imageFile = pUser.getParseFile("photo");
if (imageFile != null) {
todoImage.setParseFile(imageFile);
todoImage.loadInBackground();
}
// Add the title view
final TextView titleTextView = (TextView) v
.findViewById(R.id.textViewSearch);
titleTextView.setText(pUser.getUsername());
btnAdd = (ImageButton) v.findViewById(R.id.imageButtonAdd);
btnAdd.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
Drawable background = v.getResources().getDrawable(
R.drawable.ui_border_green);
Drawable img = v.getResources().getDrawable(
R.drawable.ico_friend_add_green);
btnAdd.setBackground(background);
btnAdd.setImageDrawable(img);