如何专注于触摸屏幕的列表视图的项目和上下移动手指没有触摸ID - Android

时间:2013-02-22 11:43:24

标签: android android-listview

我有一个包含两列的列表视图,用户可以将productName和proudctQty与库存进行比较。该列表中有大量产品,用户可能会混淆检查所有产品。因此,我们的想法是通过重点突出产品及其价格。

是否有人知道是否可以在列表视图中实现它,就像在虚拟键盘上一样(它不是onLongTouch或点击)?

有人可以暗示如何做到这一点吗?

非常感谢

2 个答案:

答案 0 :(得分:1)

好的,就像使用wheelpicker iPhone一样,我们可以按照这些步骤突出显示产品

  1. 实现列表的onscrollchangedlistener。
  2. 将列表放在相对布局中,其中另一个视图位于centerinparent和fillparent 在此视图中,您将显示突出显示的项目。

  3. 在滚动列表时,在覆盖的onscroll方法中更新该视图上的内容。

答案 1 :(得分:0)

您需要使用View Holder Pattern。您可以在Google上找到更多信息。

只需创建一个名为AdapterViewHolder的类,声明属性,每行Views

例如:

public class AdapterViewHolder
{

    ImageView myImageView;

    TextView myTextView;

    ...

}

在构造函数中传递您的值以设置为views,初始化您的views并设置您的值,如:

public AdapterViewHolder(String param, Drawable imageDrawable){

// set values to views

}

getView方法的适配器中:

if convertView == null 

//then create your layout and holder class, set your holder to your layout by view.setTag method, prepare your view and return it

else

//get your layout tag by view.getTag(), cast it to AdapterViewHolder and update your views and values of them as you like and then return updated view.

有关更多信息,请在Android列表视图中搜索ViewHolder模式。