下垂检视器

时间:2018-07-04 14:44:29

标签: java android

我在这段代码中遇到过Viewholder大小写的情况,我不明白为什么我在Java中检查了强制类型转换的原因,从我的理解这是某种形式的下垂,但我不明白为什么在这里强制转换viewholder是代码

public View getView(int paramInt, View paramView, ViewGroup paramViewGroup)
  {
    ViewHolder localViewHolder;
    if (paramView == null)
    {
      paramView = ((LayoutInflater)this.activity.getSystemService("layout_inflater")).inflate(this.row, null);
      localViewHolder = new ViewHolder();
      paramView.setTag(localViewHolder);
    }
    else
    {
     // here is my confustion in why cast viewholder 
      localViewHolder = (ViewHolder)paramView.getTag();
    }
    if (this.itemsCategory != null)
    {
      if (paramInt + 1 > this.itemsCategory.size()) {
        return paramView;
      }

1 个答案:

答案 0 :(得分:0)

因为标签是属于View的任意对象。您可以将其设置为ViewHolder以外的其他对象,但是此模式使用ViewHolder,因此,应将其强制转换为ViewHolder。