android 禁止scrollview横向滚动,android – 禁用NestedScrollview滚动
您必须创建一个在触摸和滚动事件时不执行任何操作的新类:public class LockableNestedScrollView extends NestedScrollView {// by default is scrollableprivate boolean scrollable = true;public LockableNestedScrollView(@NonNull Context
您必须创建一个在触摸和滚动事件时不执行任何操作的新类:
public class LockableNestedScrollView extends NestedScrollView {
// by default is scrollable
private boolean scrollable = true;
public LockableNestedScrollView(@NonNull Context context) {
super(context);
}
public LockableNestedScrollView(@NonNull Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
}
public LockableNestedScrollView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
public boolean onTouchEvent(MotionEvent ev) {
return scrollable && super.onTouchEvent(ev);
}
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
return scrollable && super.onInterceptTouchEvent(ev);
}
public void setScrollingEnabled(boolean enabled) {
scrollable = enabled;
}
}
接下来在您的布局中,您可以通过新类更改NestedScroll:
orientation:"horizontal"
android:id="@+id/scroll_name">
(contains Recyclerview-2)
最后在你的活动中:
LockableNestedScrollView myScrollView = (LockableNestedScrollView) findViewById(R.id.scroll_name);
myScrollView.setScrollingEnabled(false);
我希望它可以帮助别人.
更多推荐
所有评论(0)