Articles of android recyclerview

当RecyclerView适合屏幕时,不要折叠工具栏

我使用Android Design Library创建了一个应用程序,带有工具栏和TabLayout。 实际上有2个选项卡,都有2个RecyclerView,滚动时会自动折叠工具栏。 我的问题是:当RecyclerView具有少量项目并且完全适合屏幕时(如在TAB 2中),我可以禁用工具栏折叠吗? 我见过很多像CheeseSquare这样的例子,由Google员工制作,问题仍然存在:即使RecyclerView只有1个项目,工具栏也会隐藏在滚动上。 我想我可以找出是否在屏幕上显示RecyclerView的第一项,如果是,则禁用工具栏折叠。 前者易于实现,后者又如何呢? 这是我的布局:

android.support.v7.app.AlertController.RecycleListView和android.support.v7.widget.RecyclerView之间的区别

我最近更新了我的Android Studio和SDK。 在新的Android Studio中,有android.support.v7.app.AlertController.RecycleListView 。 我熟悉android.support.v7.RecyclerView ,所以我有点困惑,这两者之间有什么区别。 如果有人可以指导,那将是感恩的。

在Android的RecyclerView中检测animation完成

与ListView不同, RecyclerView没有一种简单的方法来设置空视图,因此必须手动管理它,以便在适配器的项数为0时使空视图可见。 实现这一点,起初我尝试在修改底层结构(在我的情况下为ArrayList )后立即调用空视图逻辑,例如: btnRemoveFirst.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { devices.remove(0); // remove item from ArrayList adapter.notifyItemRemoved(0); // notify RecyclerView’s adapter updateEmptyView(); } }); 它做了这件事,但有一个缺点:当删除最后一个元素时,在删除animation完成之前立即显示空视图。 所以我决定等到animation结束然后更新UI。 令我惊讶的是,我找不到在RecyclerView中监听animation事件的好方法。 首先想到的是使用isRunning方法,如下所示: btnRemoveFirst.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { devices.remove(0); // remove item from ArrayList adapter.notifyItemRemoved(0); // notify RecyclerView’s adapter recyclerView.getItemAnimator().isRunning(new RecyclerView.ItemAnimator.ItemAnimatorFinishedListener() { @Override […]

仅在getItemViewType更改时才调用RecyclerView onBindViewHolder

我有一个具有多个视图types的视图。 滚动onBindViewHolder仅在getItemViewType更改值时getItemViewType 。 这会导致我的列表项无法正确更新。 这是一个错误吗? 或者我在这里做错了什么。 这似乎是来自新的recyclerView类的非常奇怪的行为。 这是我的适配器: package se.davison.smartrecycleradapter; import android.content.Context; import android.support.v7.widget.RecyclerView; import android.util.Log; import android.util.SparseIntArray; import android.view.LayoutInflater; import android.view.ViewGroup; import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; /** * Created by richard on 10/11/14. */ public class SectionAdapter extends RecyclerView.Adapter { private static final String TAG = SectionAdapter.class.getSimpleName(); private final LayoutInflater inflater; […]

检测RecyclerView何时在滚动时到达最底部位置

我有一个RecyclerView的代码。 recyclerView = (RecyclerView)rootview.findViewById(R.id.fabric_recyclerView); recyclerView.setLayoutManager(layoutManager); recyclerView.addItemDecoration(new RV_Item_Spacing(5)); FabricAdapter fabricAdapter=new FabricAdapter(ViewAdsCollection.getFabricAdsDetailsAsArray()); recyclerView.setAdapter(fabricAdapter); 我需要知道RecyclerView在滚动时何时到达最底部位置。 可能吗 ? 如果有,怎么样?

使用ItemTouchHelper进行滑动以解除与刷出后面显示的另一个视图

我有一个RecyclerView,并希望允许我的用户使用滑动手势从列表中删除项目。 但正如其他应用程序(例如Gmail)所知,我想在其后面显示一个删除图标,以便我的用户知道刷卡会导致删除。 但是,我找不到一个明显的方法来做到这一点。 ItemTouchHelper使用viewHolder.itemView,因此需要整行。 我的代码: ItemTouchHelper.SimpleCallback simpleItemTouchCallback = new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.LEFT) { @Override public boolean onMove( final RecyclerView recyclerView, final RecyclerView.ViewHolder viewHolder, final RecyclerView.ViewHolder target) { return false; } @Override public void onSwiped( final RecyclerView.ViewHolder viewHolder, final int swipeDir) { adapter.remove(viewHolder.getAdapterPosition()); } }; ItemTouchHelper itemTouchHelper = new ItemTouchHelper( simpleItemTouchCallback ); itemTouchHelper.attachToRecyclerView(itemsRecyclerView); itemsRecyclerView.setLayoutManager( new LinearLayoutManager(getContext()) ); […]

与ListView相比,RecyclerView的优势是什么?

我刚刚开始使用RecyclerView,我发现它缺少很多function,如页眉,页脚,分隔符,列表选择器,现在我对使用它而不是ListView有了第二个想法。 与ListView相比,RecyclerView有哪些优缺点? 它可以处理比ListView更复杂的视图吗? 到目前为止我一直在使用ListView,有几次,是时候切换到RecyclerView还是现在太快了?

在RecyclerView的末尾添加空间

我有一个带有gridlayout的recyclerview。 我想要的是当用户滚动到列表的末尾( 请参阅我的坏模型 )时,应该有一个高度为50dp的空白空间,这与我的网格尺寸不同。 请注意,此空间仅在最末端可见,因为我不想更改布局。 我可以这样做,以便recycerview的边距为50dp,但我不想这样做。

Recyclerview适配器和Glide – 每4-5行相同的图像

我有这个问题 – 仅仅为了测试目的,我将ParseFile从接收列表添加到ParseFile之一。 它不是仅显示在该行中,而是显示每4-5行,有时更多,有时更少。 我认为回收视图与此有关。 奇怪的是,其他数据(从这个例子中删除)适用于positionvariables。 @Override public void onBindViewHolder(ViewHolder holder, int position) { if(parseList.get(position).get(“logo”) != null){ ParseFile image = (ParseFile) parseList.get(position).get(“logo”); String url = image.getUrl(); Glide.with(context) .load(url) .placeholder(R.drawable.piwo_48) .transform(new CircleTransform(context)) .into(holder.imageView); } }

无法在Recyclerview下面添加空视图

我正在尝试使用recyclerview和浮动操作按钮来创建应用程序。 我遇到的问题是浮动操作按钮会阻碍Recyclerview中的按钮。 我查看了Android应用程序如手机应用程序(你在gridvew中显示的联系人)是如何设计来处理这个问题的,我看到底部留有空白空间,它在recyclerview和浮动操作按钮之间留出空间,用户只需滚动到底部以避免重叠。 我尝试在recyclerview之后添加一个视图,但不会显示它,此视图也应该与recyclerview行一起移动。 在Recyclerview的最后,我缺少什么来显示视图。 我的布局文件: 更新:修改布局代码以使其工作。