您的位置:首页 > 移动开发 > Android开发

RecyclerView是Android L家第一个美女,我要认识她。

2015-12-15 18:25 471 查看
事到如今,对于RecyclerView的认识相信大家都已经知晓了。视图漂亮,易于扩展,操作渐变。。。等等。我们大多都听说过她为人称道的美丽,却囿于eclipse被google抛弃而望而兴叹。今天装上as,迫不及待的去亲眼目睹一下RecyclerView的风采。

首先建立一个RecyclerView project,引入recycle的依赖。

因为是第一次初识recycleview,所以我放弃别的控件,把整个recycleview设为布局:

@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
rv = new RecyclerView(this);
setContentView(rv);
好了。到现在,算是见到了recycle小姐。可是,我们的目的不是远远的看一眼而已!!!你懂的。

那么我们就去say:hello girl

泡妞不外乎高富帅这三个神器,泡recycle小姐呢也需要神器,哦,不对,是纯洁的结识。结识recycle小姐需要的神器是LayoutManager,ItemDecoration , ItemAnimator。

LayoutManager——布局管理器。管理显示的方式。

ItemDecoration ——Item的间隔控制器。管理driver的。

ItemAnimator——动画控制器。控制增添删除item的动画。

so,当我们知道了这三个神器,那么久大胆的去约吧:

首先献给recycle小姐第一个神器

rv.setLayoutManager(new LinearLayoutManager(this));


然后像listView抑或gridView一样的设置adpter:

rv.setAdapter(new RecyclerView.Adapter()

因为是初识,所以我要简单得来,我就用了匿名内部类。。。

这个adpter里重写方法:

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType)
{
return null;
}

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position)
{

}

@Override
public int getItemCount()
{
return 0;
}


前两个方法有个我们常见的viewHolder,所以我们要创建viewHolder:

class ViewHold extends RecyclerView.ViewHolder
{
private TextView tv;

public ViewHold(TextView itemView)
{
super(itemView);
tv = itemView;
}

public TextView getTv()
{
return tv;
}
}


ok,把这个viewHolder传到adpter的方法里:

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType)
{
return new ViewHold(new TextView(parent.getContext()));
}

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position)
{
ViewHold vh = (ViewHold) holder;
vh.getTv ().setText("item"+position);
}


下面修改item的数量为10:

@Override
public int getItemCount()
{
return 10;
}


运行:

recycle的第一面已经见到啦。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  recycleView android 控件