カードゲームをベースにしたアプリを作っています。ユーザーは自分のカードを見ることができます。彼はまた、「テーブルの周り」をスクロールして、対戦相手の開いているカードを見ることができます。画面には、一度に1人のプレーヤー(ユーザーまたは対戦相手の1人)が表示されます。
Galleryを使用して実装しました。カスタムアダプターを使って、円形にしました。また、onFling()をインターセプトして、テーブルの周りではなく、次のプレーヤーに「フリング」するようにしました。ここまでは順調ですね。
ここに問題があります。ギャラリーの要素が画面全体と同じくらい広い場合、ギャラリーはうまく機能しません。ビューを「少し」ドラッグして次のプレーヤーを表示することはできません。ほとんどの場合、フリングは機能しません。その場合、アニメーションはありません。ビューは次のプレーヤーに切り替わります。
ギャラリー要素を画面より2ピクセル狭くすることで解決しました。1ピクセルでは不十分です。一方向へのスクロールは修正されますが、他の方向は依然として「堅い」です。
私は2つの理由でこれを書いています。まず、同様の問題がある場合は、この投稿で数時間を節約できる可能性があります。第二に、私は興味があります:Androidの達人の誰もがギャラリーコントロールのこの振る舞いを説明できますか?