`

Android 之view.SetTag

 
阅读更多
Adapter 有个getView方法,可以使用setTag把查找的view缓存起来方便多次重用

public View getView(int position, View convertView, ViewGroup parent) {
       ViewHolder vh;

       if (convertView == null) {
               LayoutInflater inflater = (LayoutInflater) mWidgetsSwitchApp
                               .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
               convertView = inflater.inflate(R.layout.app_gallery_item, null);
               vh = new ViewHolder();
               vh.view1 = (ImageView) convertView.findViewById(R.id.view1);
               vh.view2 = (ImageView) convertView.findViewById(R.id.view2);
               vh.view3= (ImageView) convertView.findViewById(R.id.view3);
               vh.view4 = (ImageView) convertView.findViewById(R.id.view4);
               convertView.setTag(vh);
       } else {
               vh = (ViewHolder) convertView.getTag();
       }
//其他的代码可以直接使用 vh.view1、vh.view2、vh.view3 、vh.view4
}


View中的setTag(Onbect)表示给View添加一个格外的数据,
以后可以用getTag()将这个数据取出来。
分享到:
评论

相关推荐

    Android开发 -- setTag的妙用和The key must be an application-specific resource id 异常

    本文主要介绍Android开发setTag的妙用,小编觉得挺实用的,给大家一个参考,希望对大家学习有所帮助。

    android地址选择器

    import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.Spinner; import android.widget....

    Android 同时setTag两次保存多种值的示例代码

    setTag是android的view类中很有用的一个方法,可以用它来给空间附加一些信息,在很多场合下都得到妙用。 示例代码: view.setTag(R.string.action_settings,hodler.content); 接收两个值,一个是key值,必须是唯一...

    listviewAdapter

    import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; public class NewsListViewAdapter extends ...

    package com.example.f1_telephone;

    import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ListView; import android.content.ContentResolver; import ...

    wzy17419.rar

    view.setTag(viewHolder); } else { view = convertView; viewHolder = (ViewHolder) view.getTag(); } viewHolder.title = (TextView) view.findViewById(R.id.tv_title); viewHolder.time = ...

    Android代码-一个封装的SuperAdapter

    You won't need to write ViewHolder, createView, setTag, getTag, and confuse how to setOnItemClickListener to RecyclerView, etc. The only thing you really need to do is that implement a method onBind...

    ListView多条目显示

    ListView复用多个布局文件。 //复用三个布局文件 @Override public View getView(int position, View convertView, ViewGroup parent) { viewHolder1 holder1 ... convertView.setTag(holder1); break;

    ZhaoLizz#Android-Notes#RecyclerView的回调点击事件1

    RecyclerView点击事件的回调机制当需要用到点击事件发送intent时,必须用回调可以利用 控件.setTag(),view.getTag(),利用vi

    SwissArmyKnife-android免root兼容所有版本ui调试工具.zip

    ps 该选项可能会导致滑动卡顿自定义信息自定义信息用于android开发者调试使用,开发者可以为view设置setTag(com.wanjian.sak.CanvasManager.INFO_KEY,Object),设置后并开启自定义信息选项后就可以在控件左上角看到...

    Android setTag方法的key问题解决办法

    android在设计View类时,为了能储存一些辅助信息,设计一个一个setTag/getTag的方法。这让我想起在Winform设计中每个Control同样存在一个Tag。 今天要说的是我最近学习android遇见的setTag的坑。一般情况下我们只...

    MultilevelTreeList-快速实现Android多级树形列表,由鸿洋多级树形列表demo修改而来。支持ListView、RecyclerView。.zip

    快速实现Android多级树形列表,这个库是在鸿洋多级树形列表demo中修改而来。解决的问题:支持ID为int类型和String类型。支持多级复选框选中,使用只需一行代码。支持动态更新数据并保持原有展开/关闭状态。支持...

    Android实现ListView异步加载的方法(改进版)

    本文实例讲述了Android实现ListView异步加载的方法。分享给大家供大家参考,具体如下: @Override public View getView(int position, View convertView, ViewGroup parent) { ………… ViewHolder VH = null; ...

    SplideRemoveMenu-滑动删除菜单.zip

     convertView.setTag(vHolder);  }else{  vHolder = (ViewHolder) convertView.getTag();  }  String msg = getItem(position);  vHolder.content.setText(msg);  final ViewHolder ...

    SwipeListViewTest项目

    <Button android:id="@+id/example_row_b_action_1" android:layout_width="0dp" android:layout_height="60dp" android:layout_gravity="center" android:layout_marginRight="10dp" android:layout_weight="1" ...

    Android开发 — setTag的妙用和The key must be an application-specific resource id 异常

    tag是view的一个属性,也可以说是view用于存放参数的一个map,对于提高性能和参数传递都有妙用,比如提高listview的性能: 用于缓存item的view 代码如下:public View getView(final int position, View convertView...

Global site tag (gtag.js) - Google Analytics