我的应用中有一个列表。列表中的每一行都有一个图像和一个textView。
当单击相应的行时,我希望textView向右移动。
如何在"setOnItemClickListener"
?
这是我的适配器:
public class MyAdapter extends ArrayAdapter<String> {
private final Context context;
private final String[] values;
private TextView textView;
private ImageView icon;
public boolean first;
public MyAdapter(Context context, String[] values) {
super(context, R.layout.rowlayout, values);
this.context = context;
this.values = values;
this.first = true;
}
@SuppressWarnings("deprecation")
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.rowlayout, parent, false);
textView = (TextView) rowView.findViewById(R.id.row_text_view);
icon = (ImageView) rowView.findViewById(R.id.icon);
if (first) {
rowView.setBackgroundColor(Color.TRANSPARENT);
textView.setBackgroundColor(Color.TRANSPARENT);
icon.setBackgroundColor(Color.TRANSPARENT);
first = false;
rowView.setClickable(false);
rowView.setEnabled(false);
} else {
rowView.setBackgroundColor(Color.WHITE);
textView.setBackgroundColor(Color.WHITE);
icon.setBackgroundDrawable(context.getResources().getDrawable(R.drawable.ic_launcher));
}
textView.setText(values[position]);
return rowView;
}}
谢谢!
答案 0 :(得分:4)
OnItemClickListener
具有以下签名的方法:
onItemClick(AdapterView<?> parent, View view, int position, long id)
所以你点击了行用户。您现在可以从行获取文本视图:
view.findViewById(R.id.row_text_view)`.