ViewHolder的新写法

2016-03-14  本文已影响47人  jsnow0613

如下:

public class ViewHolder {
    public static <T extends View> T get(View view, int id){
        SparseArray<View> viewHolder = (SparseArray<View>) view.getTag();
        if (viewHolder==null){
            viewHolder = new SparseArray<View>();
            view.setTag(viewHolder);
        }
        View childView = viewHolder.get(id);
        if (childView==null) {
            childView = view.findViewById(id);
            viewHolder.put(id,childView);
        }
        return (T) childView;
    }
}
上一篇 下一篇

猜你喜欢

热点阅读