ゲームボードにGridViewを使用しています。最近、一部のユーザーがボードの垂直スクロールに問題を抱えています(Samsung Galaxy/Vibrantフォンで2.2を実行)-このバグはNexus Oneでは発生しません。
1人のユーザーが問題の screenshots を作成しました。
GridViewを所定の位置にロックするにはどうすればよいですか?スクロールを無効にする方法はありますか?
setOnTouchListener
のGridView
を追加またはオーバーライドしてから、onTouch
メソッドでこのようなコードを使用してgridView
をスクロールできないようにします。
Java
gridView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return event.getAction() == MotionEvent.ACTION_MOVE;
}
});
コトリン
gridView.setOnTouchListener { v, event ->
event.action == MotionEvent.ACTION_MOVE
}
他の副作用があるかもしれませんが、setEnabled(false)を試すことができます。 GridViewは、実際に使用する方法を意図したものではありません。独自のカスタムビューまたはレイアウトを作成する必要があります。 TableLayoutを使用することもできます。