我的 ListView 包含许多块,排列方式看起来像列。
目前,我可以找到行号,但我正在努力获取列。
我想我正在寻找一种方法来发现
- 用户点击的视图
- 水龙头的水平坐标并从中计算出来。
- 其他一些我没有想到的方法。
真正的问题:我应该如何从 ListView 中获取列号?
您可以尝试onClick(View view)
从您已绑定到列表视图的适配器类中实现分接视图的方法。
这是一个例子:
public View getView(final int position, View convertView, ViewGroup parent) {
View row = convertView;
ContactHolder holder = null;
if (row == null) {
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
row = inflater.inflate(layoutResourceId, parent, false);
holder = new ContactHolder();
holder.imgPhone = (ImageView) row.findViewById(R.id.imgPhone);
holder.imgPhone.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:" + contactArrayList.get(position).phone_number));
context.startActivity(callIntent);
}
});
row.setTag(holder);
} else {
holder = (ContactHolder) row.getTag();
return row;
}