android中draggridview禁止滑动
时间: 2023-08-31 08:03:24 浏览: 93
在Android中,DragGridView是一个可拖拽排序的网格视图组件。如果想要禁止DragGridView的滑动功能,可以通过以下几个步骤实现:
1. 创建一个自定义的DragGridView类,继承自GridView。
2. 在该类的构造方法中,调用父类的构造方法,并设置其滚动模式为SCROLL_STATE_IDLE,即静止状态。这样就可以禁止GridView的滚动。
3. 重写OnTouchEvent方法,并返回false。这样可以阻止DragGridView响应用户的触摸事件,进而禁止滑动。
下面是实现禁止滑动的代码示例:
import android.content.Context;
import android.support.v7.widget.GridLayout;
import android.util.AttributeSet;
import android.view.MotionEvent;
public class NonScrollableGridView extends GridView {
public NonScrollableGridView(Context context) {
super(context);
setScrollMode(GridView.SCROLL_STATE_IDLE);
}
public NonScrollableGridView(Context context, AttributeSet attrs) {
super(context, attrs);
setScrollMode(GridView.SCROLL_STATE_IDLE);
}
public NonScrollableGridView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setScrollMode(GridView.SCROLL_STATE_IDLE);
}
@Override
public boolean onTouchEvent(MotionEvent ev) {
return false;
}
}
通过使用这个自定义的NonScrollableGridView类,可以在布局文件中使用它替代原来的DragGridView,这样就可以禁止滑动了。
例如,在XML布局文件中使用这个NonScrollableGridView:
<com.example.NonScrollableGridView
android:id="@+id/gridview"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
以上就是禁止DragGridView滑动的简单实现方法。
阅读全文