android-recyclerview 相关问题

RecyclerView小部件是ListView和GridView的更高级和灵活的版本。

SQLite 数据库在 Android Studio 上保存图像

我尝试将图像数据存入sqlite数据库。在我想获取数据库中的数据并使用回收器视图之后。但其他数据成功图像数据未进入回收者视图 这是我的

回答 1 投票 0

如何添加适配器包括适配器recycleview android?

我正在尝试使用适配器包含适配器 recyleview 错误显示来修复此错误。在此 AdapterGrid 下方包含 AdapterRecipes 添加适配器错误显示。我尝试在下面显示此错误,添加图像如何修复

回答 1 投票 0

RecyclerView在android(androidx)中的依赖关系?

我为 RecycleView 使用了实现“com.google.android.material:material:1.0.0”。在布局中,当我输入“recycle”时,它给出的建议为 androidx.appcompat.app.AlertController$RecycleListView...

回答 3 投票 0

如何将recyclerview添加到项目中

尝试导入android.support.v7.widget.RecyclerView,但没有成功,还添加了 编译'com.android.support:recyclerview-v7:23.1.1' 到 build.gradle,但它也没有帮助

回答 6 投票 0

为什么在recyclerview适配器中看不到item的id?

我正在使用视图绑定功能编写一个recyclerview,但我无法访问项目中item.xml 文件中存在的项目的id。这是适配器的代码,它...

回答 1 投票 0

adapter.notifyDataSetChange() 不起作用

我有一个回收视图,它包含几行。 每行都有一个图像视图(心形)用于喜欢和不喜欢,我需要的是每次通过单击更改图像视图的图像。 当我明星...

回答 5 投票 0

调用notifyDataSetChanged时,仅更新RecyclerView中的最后一项

我想建立一个具有选择功能的分段列表。 为此,我的布局文件中有多个 RecyclerView(例如 5 个),并且每个 RecyclerView 的数据列表都是动态的。正如您在...中看到的那样。

回答 1 投票 0

在 NestedScrollView 内时,回收器视图加载大数据非常慢

我在 NestedScrollView 中添加了 RecyclerView。基本上我希望 RecyclerView 与其他视图一起滚动。我面临的问题是,对于一小部分数据,它工作正常,但是......

回答 5 投票 0

在附带PageSnapHelper的RecyclerView中使用TouchImageView?

我的应用程序正在做一个在 RecyclerView 上使用 TouchImageView 的画廊。 我试图使用此类在附有 PageSnapHelper 的 RecyclerView 中显示多个全屏图像 这有效...

回答 2 投票 0

在android中滚动RecyclerView时SeekBar进度发生变化

我正在开发一款类似于 What’s Up 的聊天应用程序。我遇到的问题是我在回收器视图中有搜索栏和播放图标。当我点击播放符号时,歌曲就会播放...

回答 1 投票 0

在android studio中点击回收器视图时如何检索数据库id?

我一直在开发一个Android应用程序,当我单击回收器视图中的特定行时,我需要获取数据库ID。当我之前编写这个应用程序时,我更新并删除了记录基于...

回答 1 投票 0

Kotlin - RecyclerView.LayoutManager 问题

我正在学习 Kotlin 和 Adroid Studio,最近我一直在使用 RecyclerView。 问题是由于 LayoutManager 上显示错误,我无法继续。 我的小代码看起来像......

回答 6 投票 0

“android:textIsSelectable=”true”不适用于 RecyclerView 中的 TextView

我知道在 TextView 的 xml 中设置 android:textIsSelectable="true" 将显示本机文本选择弹出窗口,我一直在我的应用程序中使用它。但我发现这并不...

回答 10 投票 0

在 kotlin 上向适配器添加绑定视图功能

我正在尝试在项目上实现绑定,但 ItemView 变得微红。 这是代码。 类 RecyclerviewAdapter:RecyclerView.Adapter() { 班级

回答 1 投票 0

在 kotlin 上向适配器添加绑定视图功能

我正在尝试在项目上实现绑定,但 ItemView 变得微红。 这是代码。 类 RecyclerviewAdapter:RecyclerView.Adapter() { 班级

回答 1 投票 0

删除项目后Recyclerview高度没有改变

我需要帮助。我正在开发一个 Android 应用程序。我使用回收视图。 我的布局看起来像添加项目后。 p.s(Ekle:添加/?indekiler:成分/Tarif Başlığı:食谱标题) 当我点击“X”时...

回答 3 投票 0

如何禁用 RecyclerView 项目的点击

我正在使用浮动操作按钮。我想在按 FAB 按钮时禁用 Recyclerview 项目的单击。我尝试了这个方法,但不起作用 setClickable(true); 我的布局 我正在使用浮动操作按钮。我想在按 FAB 按钮时禁用 Recyclerview 项目的单击。我尝试了这个方法,但不起作用setClickable(true); 我的布局 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:fab="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" android:background="#fff" tools:context="com.hartwintech.socialchat.activity.IconTabsActivity"> <android.support.v7.widget.RecyclerView android:id="@+id/recycler_view" android:scrollbars="vertical" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" > </android.support.v7.widget.RecyclerView> <com.github.clans.fab.FloatingActionMenu android:id="@+id/floatmenu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:layout_marginBottom="60dp" android:layout_marginRight="16dp" fab:fab_showAnimation="@anim/show_from_bottom" fab:fab_hideAnimation="@anim/hide_to_bottom" fab:menu_labels_style="@style/MenuLabelsStyle" fab:menu_shadowColor="#444" fab:menu_colorNormal="#FFB805" fab:menu_colorPressed="#F2AB00" fab:menu_colorRipple="#D99200"/> </RelativeLayout> Java 类 floatMenu.setOnMenuToggleListener(new FloatingActionMenu.OnMenuToggleListener() { @Override public void onMenuToggle(boolean opened) { if (opened) { final int color = R.color.transp; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { mrecyclerview.setClickable(false); mrecyclerview.setEnabled(false); mrecyclerview.setForeground(new ColorDrawable(ContextCompat.getColor(getContext(), color))); } } else { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { mrecyclerview.setClickable(true); mrecyclerview.setEnabled(true); mrecyclerview.setForeground(null); } } } }); 您可以向适配器添加一个简单的布尔值,如下所示: public boolean isClickable = true; 并将其设置在您的 fab 中 - 单击: mAdapter.isClickable = true/false; 并且在适配器的 OnClickListener 中,仅在可点击时才起作用: public void onClick(View view) { if(!isClickable) return; // do your click stuff } 要禁用 RecyclerView,请按照以下步骤操作: 1。将以下视图添加到您的布局文件中, <View android:id="@+id/viewDisableLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#40000000" android:clickable="true" android:focusable="true" android:visibility="gone"/> 2.当你想禁用 RecyclerView 时,设置视图可见性 `View.VISIBLE 您可以简单地使用递归来禁用/启用视图上的点击 public static void setClickable(View view, boolean clickable) { if (view != null) { if (view instanceof ViewGroup) { ViewGroup viewGroup = (ViewGroup) view; for (int i = 0; i < viewGroup.getChildCount(); i++) { setClickable(viewGroup.getChildAt(i), clickable); } } view.setClickable(clickable); } } Björn Kechel 的回答对我有帮助。正如他所说,我只是添加了布尔值。当我单击 fab 菜单时,布尔值被激活。然后要把条件写在mrecyclerview.addOnItemTouchListenerJava Class public Boolean fabClick = false; floatMenu.setOnMenuToggleListener(new FloatingActionMenu.OnMenuToggleListener() { @Override public void onMenuToggle(boolean opened) { if (opened) { final int color = R.color.transp; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { fabClick = true; mrecyclerview.setClickable(false); mrecyclerview.setEnabled(false); mrecyclerview.setForeground(new ColorDrawable(ContextCompat.getColor(getContext(), color))); } } else { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { fabClick = false; mrecyclerview.setClickable(true); mrecyclerview.setEnabled(true); mrecyclerview.setForeground(null); } } } }); mrecyclerview.addOnItemTouchListener(new RecyclerTouchListener(getActivity(), mrecyclerview, new RecyclerTouchListener.ClickListener() { @Override public void onClick(View view, int position) { if(!fabClick) { android.support.v4.app.FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.setCustomAnimations(R.anim.fragment_anim_start, R.anim.fragment_anim_stop); Intent i = new Intent(getActivity(), Group_Chat_Screen.class); startActivity(i); } } 您需要为每个FloatingActionButton设置点击监听器。 在图书馆查看此问题 使用 RecyclerView.OnItemTouchListener 的工作解决方案: @SuppressLint("ClickableViewAccessibility") @BindingAdapter("itemsClickable") fun setRecyclerViewClickable(view: RecyclerView, clickable: Boolean) { view.isEnabled = clickable if (!clickable) { val itemTouchListener = object : RecyclerView.OnItemTouchListener { override fun onTouchEvent(rv: RecyclerView?, e: MotionEvent?) { } override fun onInterceptTouchEvent(rv: RecyclerView?, e: MotionEvent?): Boolean { return rv?.isEnabled == false } override fun onRequestDisallowInterceptTouchEvent(disallowIntercept: Boolean) { } } view.addOnItemTouchListener(itemTouchListener) view.tag = itemTouchListener } else { (view.tag as? RecyclerView.OnItemTouchListener)?.let { view.requestDisallowInterceptTouchEvent(true) view.removeOnItemTouchListener(it) } } } Java recyclerView.setOnTouchListener((view1, motionEvent) -> true ); 科特林 reyclerView.setOnTouchListener { v, event -> true } 此解决方案禁用所有触摸事件 您可以禁用recyclerview的触摸 recyclerView.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { return true; } }); 在xml文件中,将FloatingActionMenu的layout_width和layout_height设置为match_parent,并将clickable设置为false: android:layout_width="match_parent " android:layout_height="match_parent " android:clickable="false" 在你的java课程中, floatMenu.setOnMenuToggleListener(new FloatingActionMenu.OnMenuToggleListener() { @Override public void onMenuToggle(boolean opened) { if (opened) { floatMenu.setClickable(true); } else { floatMenu.setClickable(false); } } }); 这应该有效。 我用非常简单的逻辑解决了这个问题。这将防止双击单个项目和 RecyclerView 的多个项目。 在您的 Activity 中声明一个变量。 private long mLastClickTime = 0; 然后在任何OnClickListener中使用。 @Override public void onClick(View v) { if(SystemClock.elapsedRealtime() - mLastClickTime < 1000){//You can reclick after 1 second return;//Before 1 seconds from first click this onclick will return from here } mLastClickTime = SystemClock.elapsedRealtime(); //Do stuff here } 实际上,当我搜索防止双击按钮时,我在 stackover flow 中找到了这个解决方案。我写这行是为了确认实际答案是由某人发布的(不幸的是,我无法找到该答案来链接他/她的答案。) 希望这能解决您的问题。:) yourRecycelerview.suppresslayout(true) 干净、简单,无需项目触摸侦听器或视图持有者逻辑即可工作。 文档: /** * Tells this RecyclerView to suppress all layout and scroll calls until layout * suppression is disabled with a later call to suppressLayout(false). * When layout suppression is disabled, a requestLayout() call is sent * if requestLayout() was attempted while layout was being suppressed. * <p> * In addition to the layout suppression {@link #smoothScrollBy(int, int)}, * {@link #scrollBy(int, int)}, {@link #scrollToPosition(int)} and * {@link #smoothScrollToPosition(int)} are dropped; TouchEvents and GenericMotionEvents are * dropped; {@link LayoutManager#onFocusSearchFailed(View, int, Recycler, State)} will not be * called. * * <p> * <code>suppressLayout(true)</code> does not prevent app from directly calling {@link * LayoutManager#scrollToPosition(int)}, {@link LayoutManager#smoothScrollToPosition( *RecyclerView, State, int)}. * <p> * {@link #setAdapter(Adapter)} and {@link #swapAdapter(Adapter, boolean)} will automatically * stop suppressing. * <p> * Note: Running ItemAnimator is not stopped automatically, it's caller's * responsibility to call ItemAnimator.end(). * * @param suppress true to suppress layout and scroll, false to re-enable. */

回答 11 投票 0

在启动器应用程序上向上和向下滑动手势

我正在开发 Android 启动器应用程序,但我无法在主屏幕上使用向上和向下滑动手势。我正在使用 RecyclerView 在网格布局中显示应用程序。 在家庭屏幕上...

回答 1 投票 0

Android:带有 LongClickListener 的 RecyclerView 项目并拖放

所以,我正在尝试解决这个问题。我在网上看到很多关于具有滑动和拖动功能的 RecyclerView 项目的帖子 - 我已经把它记下来了。但我无法开始工作的是拖动和长按ac...

回答 2 投票 0

如何使用recyclerview将图库中的所有图像获取到我的应用程序?以及如何在onbind支架中设置图像以加载图库图像

public void onBindViewHolder(MyAdapter.MyViewHoldeholder,int位置){ //如何设置图像以加载图库图像 ---------- } //以及如何从galle获取图像的代码...

回答 5 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.