十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
gvs(id,对象)
为汝城等地区用户提供了全套网页设计制作服务,及汝城网站建设行业解决方案。主营业务为网站制作、成都网站建设、汝城网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
cls("android.support.v7.widget.RecyclerView",列表类)
cls("android.support.v7.widget.StaggeredGridLayoutManager",布局管理类)
javanew(布局,布局管理类,"int",2,"int",1)
javax(null,对象,列表类,"setLayoutManager","android.support.v7.widget.RecyclerView$LayoutManager",布局)
StaggeredGridLayoutManager(瀑布流布局效果),是配合RecyclerView使用的。
activity_main.xml:
MainActivity.java:
ItemAdapter.java:
item_card.xml:
执行效果:
recyclerview 的
StaggeredGridLayoutManager
可以显示成瀑布流的形式
1、酷派手机左边第一个桌面就是瀑布流(新闻桌面),这个其实用处不大,而且更新还费流量。点手机左键,打开桌面管理。
2、此时,会发现除了瀑布流之处。其余的桌面都可以删除。
3、那如何删除呢,打开应用窗口,可以看到右上角有个“酷秀”的图标,点击打开
4、进入后,再点右上角的“设置”按键(或者向右滑动),此时就可以看到菜单中有个“显示瀑布流”的勾选项,把勾选去掉便可以,然后退回到主屏再看看效果
条目错乱是由于每个item里图片宽高不确定导致的,所以首先需要设置
layoutManager.setGapStrategy(StaggeredGridLayoutManager.GAP_HANDLING_NONE)
这个属性,不自动刷新间隔
第一种方式就是在请求完成数据之后获取宽高,然后设置给每个item
第二种方式,在第一次加载item时,记录图片的宽高,但是这样在滑动到顶部是可能会出现顶部留白的问题,所以要重写recyclerview的onscrollstatechangelistener方法,在加载第一行的条目时调用layoutmanager.invalidateSpanAssignments();
holder.imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String webInfo = holder2.url2.getText().toString();
StaggeredAdapter里面的点击事件这样写,外面要用final定义,你直接findviewbyid,肯定只会找到第一个item的里面的textview的url2,所以不管点哪个都会显示第一个的,你这样写,不光瀑布流会这样,就算普通的listview也会这样。你这标题一个“瀑布流”估计很多人都不会来看是哪里错了,其实跟瀑布流一点关系没有