Articles of android recyclerview

Espresso:Recyclerview滚动到结束

有没有办法使用Espresso滚动到recyclerview的末尾? 有一个带有文本的项目,我们说’Text XYZ’,而recyclerview有一个id recycleler_view。 此项恰好是回收站视图的最后一项。 我试过了 onView(withId(R.id.recycler_view)).check(matches(isDisplayed())).perform(RecyclerViewActions.scrollTo(withText(“Text XYZ”)),click()); 但这似乎不起作用。 有任何想法吗?

RecyclerView onCreateViewHolder返回types与多个自定义ViewHolders不兼容

我正在尝试在RecyclerView中使用多个ViewHolders,以便在运行时交换这些视图。 我创建了两个扩展RecyclerView.ViewHolder的类: MenuItemViewHolder public class MenuItemViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener { public TextView menuItemText; public ImageView menuItemPhoto; public RecyclerViewAdapter rva; public MenuItemViewHolder(View itemView) { super(itemView); itemView.setOnClickListener(this); rva = caller; menuItemText = (TextView) itemView.findViewById(R.id.grid_text); menuItemPhoto = (ImageView) itemView.findViewById(R.id.grid_image); } @Override public void onClick(View view) { Toast.makeText(view.getContext(), “Clicked Position = ” + getPosition(), Toast.LENGTH_SHORT).show(); } } SelectedItemViewHolder […]

嵌套滚动视图内的Recyclerview加载所有数据,而不是滚动时逐个调用图像

在我的应用程序中,我正在使用tabHost Activiy。在tabhost第一个选项卡中,我正在使用TabActivity,我正在加载超过500个图像。 使用嵌套的SCroll视图: 我在recyclerview中使用了嵌套滚动视图。当加载主页时,它最初加载所有500个图像,然后显示主页。因此它会导致内存错误。 不使用嵌套的SCroll视图: 如果我删除嵌套的滚动视图,一切都运行良好。滚动时逐个加载图像。它不会导致内存不足错误。 我的要求: 我需要滚动放置在recyclerview顶部的相对布局。所以我使用嵌套滚动视图。但它对我不起作用。 tab_home_layout: 下面我愿意分享我到目前为止所尝试的内容。 我试过这个SOpost 。但是我在tabActivity里面使用主页。所以我不能使用工具栏+协调器布局。所以这个解决方案对我没用。 然后我尝试使用多个布局进行recyclerview.But这对我不起作用。因为relativelayout是静态的。如果我从webservice手段获得任何条件,我可以使用多个布局recyclerview.But我需要只是滚动视图。 我打算在适配器的第0位置设置静态relativelayout。但是我的webservices图像从第0位加载。所以我不能在适配器的第0位设置静态relativelayout。 是否有任何替代解决方案来解决这个问题。谢谢。

单击recyclerview时,父级单击事件不会触发

我有一个带有几个TextView的CardView中的RecyclerView。 CardView有一个OnClickListener集,在单击TextViews时会被触发,但在单击RecyclerView时不会触发。 这是CardView的样子: 我不需要在这个RecyclerView上有一个点击监听器,并且只需要在单击RecyclerView时触发父视图的click事件(OnLongClick事件也是如此)。 我还需要RecyclerView来滚动。 RecyclerView是一些如何吃点击事件而不是将其传递给父母?

如何将两个适配器设置为一个RecyclerView?

我正在开发一个Android应用程序,其中我在’FirebaseDatabase`上存储两种不同types的信息。 然后在MainActivity ,我正在检索它们并在RecyclerView向用户显示。 这两个信息都是以不同的布局显示的,即两者的布局都不同,这就是为什么我有两个制作两个不同的Model类,现在有两个不同的适配器。 我正在使用@MikePenz的FastAdapter 所以,我做的是我在recyclerview上设置适配器的顺序与从数据库中获取信息的顺序相同: 1。 public void prepareDataOfSRequests() { gModelClass = new GModelClass(postedBy, ***, ***, ***, “error”, ***, formattedTime, currentLatitude, currentLongitude, utcFormatDateTime, userEmail, userID, null, ***, itemID); fastItemAdapter.add(0, gModelClass); recyclerView.setAdapter(fastItemAdapter); recyclerView.smoothScrollToPosition(0); emptyRVtext.setVisibility(View.INVISIBLE); } 2。 public void prepareDataOfERequests() { eModelClass = new EModelClass(***, ***, ***, ***, “error”, ***, formattedTimeE, currentLatitudeE, currentLongitudeE, utcFormatDateTimeE, userEmailE, userIDE, […]

notifyItemChanged()使RecyclerView滚动并跳转到UP

我有一个带有适配器的RecycleView,它显示了服务器列表,用户必须选择一个服务器。 当我在onClick()方法中调用notifyItemChanged(previousPosition)以使旧服务器未被选中并选择新服务器时,这使得RecycleView列表完全跳到列表中间。 当我点击RecycleView列表中最后2或3个服务器之一时,会发生此问题 这是我的RecyclerView.Adapter的代码: public class ServerAdapter extends RecyclerView.Adapter { private List listServers = new ArrayList(); private int[] icons = new int[]{R.drawable.server1,R.drawable.server2,R.drawable.server3,R.drawable.server4,R.drawable.server5,R.drawable.server6,R.drawable.offline}; private int selected = 0; private int previousSelected = 0; public ServerAdapter(List listServers){ this.listServers = listServers; } @Override public ServerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.server_relative_layout,parent,false); return new ServerViewHolder(view); } […]

通过拖放来订购recyclerview的元素

我正在开发一个Android应用程序,它是一个包含LinearLayout的Recyclerview,通过一系列自定义项目,你可以使用拖放来订购这些项目吗? 怎么样? 提前致谢。

将TextView附加到RecyclerView

我意识到以下是不正确的,但我想你可以把它当作伪代码。 我想知道,我怎么能将整个布局“附加”到我的RecyclerView上,这样当我向下滚动布局时,它会随着它滚动出来。 目前,RecyclerView上方的TextView固定在屏幕上,而我的RecyclerView中的所有数据都是可滚动的。 当用户向下滚动页面时,我希望TextView移出视线。 如果您查看Instagram,当您向下滚动页面时,图库顶部的所有用户个人资料信息都会消失。 我怎样才能做到这一点? 如何以编程方式添加TextView?

LinearLayoutManager无法解析getOrientation()

我有一个片段中实现的RecyclerView ,我试图在代码中添加分隔符。 我让RecylcerView按预期工作,但LinearLayoutManager无法解析getOrientation()函数。 private RecyclerView mRecyclerView; private RecyclerView.Adapter mAdapter; private RecyclerView.LayoutManager mLayoutManager; @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View root = (View) inflater.inflate(R.layout.fragment_settings, null); getActivity().setTitle(“Settings”); mRecyclerView = (RecyclerView) root.findViewById(R.id.recycler_view_settings); mRecyclerView.setHasFixedSize(true); mLayoutManager = new LinearLayoutManager(getContext()); mRecyclerView.setLayoutManager(mLayoutManager); mAdapter = new SettingsAdapter(getResources().getStringArray(R.array.setting_list)); mRecyclerView.setAdapter(mAdapter); DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(mRecyclerView.getContext(), mLayoutManager.getOrientation()); mRecyclerView.addItemDecoration(dividerItemDecoration); return root; }

如何在RecyclerView中使用fastScrollEnabled?

我是RecyclerView的新手,我想在RecyclerView中实现快速滚动function,如google联系人应用程序和在互联网上搜索,我发现现在Android为RecyclerView正式提供了新的fastScrollEnabled布尔标志。 所以我的问题是有人可以提供它的示例实现。 以下是来自Google https://developer.android.com/topic/libraries/support-library/revisions.html#26-0-0的官方文档