私は4つの列を表示するGoogle TVアプリでアクティビティを持っています。レイアウトのトップレベルのウィジェットは、水平のLinearLayoutです。このウィジェットには、列を構成するウィジェットが含まれています。 4つの列ウィジェット(左から右へ)は、Vertical LinearLayout(ボタンを含む)、ListFragment、ListFragment、Vertical LinearLayout(TextViewsを含む)です。Google TVでListFragmentの自動スクロールを防止するにはどうすればよいですか?
データが入力されると、2つのListFragmentsは画面の視認可能な高さよりもはるかに高く、リスト上を上下に移動するために独立してスクロールすることができます。これは、ListFragmentsの不要な自動スクロールを除いて、列間のフォーカスを移動するときを除いて、すべて正常に機能します。
たとえば、2番目の列(一番左のListFragment)の上にフォーカスしていて、Dパッドを使用してフォーカスを表示画面の中央に移動し、次に右(他のListFragmentに水平方向に移動するために)最初のListFragmentのフォーカスされた項目の横にあったリスト項目(2番目のListFragment内)はフォーカスを受け取りますが、同時に2番目のListFragment垂直方向に自動スクロールして、新しくフォーカスされたアイテムを表示画面の上部に押し込みます(これは悪い)。代わりに、それがどこにあったか(リストの真ん中)に残しておきたい。
2番目のListFragmentの中央から左に移動して1番目のListFragmentに戻ると同じ問題が発生します。また、第1列のボタンの1つから、第1 ListFragmentの中央に移動した場合にも発生します。
この自動スクロールの動作は、一部のアプリケーションでは望ましいかもしれませんが、実際には適切ではないため、ユーザーの混乱を招くことがあります。
おかげでメガを、あなたの回避策は実行可能なソリューションです。少数のオートスクロールが行われていますが、ユーザーを混乱させるほどのものではありません。私はdパッドを備えた物理的なタブレットを持っていませんが、さまざまなAVDでテストしましたが、問題は3.2にありますが4.0.3では修正されています。バグレポートを作成しましたhttps://code.google.com/p/android/issues/detail?id=30863 – fishingwiththesleepers
物理タブレットを持っている場合は、矢印キー付きのBluetoothキーボードを使用してD-Padをシミュレートします。 –