猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
如何禁用RecyclerView滚动?
我无法禁止在中滚动RecyclerView。我尝试打电话,rv.setEnabled(false)但仍然可以滚动。
如何禁用滚动?
烙印99
浏览 6808
回答 3
3回答
慕森王
REAL REAL的答案是: 对于API 21和更高版本:无需Java代码。 您可以android:nestedScrollingEnabled="false" 在xml中设置 :<android.support.v7.widget.RecyclerView android:id="@+id/recycler" android:layout_width="match_parent" android:layout_height="wrap_content" android:clipToPadding="true" android:nestedScrollingEnabled="false" tools:listitem="@layout/adapter_favorite_place">
0
0
0
慕虎7371278
这有点棘手,但可行。您可以在中启用/禁用滚动RecyclerView。这是一次空洞的RecyclerView.OnItemTouchListener窃取,每一次触摸事件都会使目标无效RecyclerView。public class RecyclerViewDisabler implements RecyclerView.OnItemTouchListener { @Override public boolean onInterceptTouchEvent(RecyclerView rv, MotionEvent e) { return true; } @Override public void onTouchEvent(RecyclerView rv, MotionEvent e) { } @Override public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) { }}使用它:RecyclerView rv = ...RecyclerView.OnItemTouchListener disabler = new RecyclerViewDisabler();rv.addOnItemTouchListener(disabler); // disables scolling// do stuff while scrolling is disabledrv.removeOnItemTouchListener(disabler); // scrolling is enabled again
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
Android
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续