ListView内のフォーカス可能なEditText
私はこれまでにこれに約6時間費やしており、障害物だけにぶつかっています。一般的な前提は、ListView(アダプターによって生成されたか、ヘッダービューとして追加されたかにかかわらず)EditTextウィジェットとButtonです。私がやりたいことは、ジョグボール/矢印を使用して、セレクターを通常のように個々のアイテムにナビゲートできることですが、特定の行に到達したとき-行を明示的に識別する必要がある場合でも-これはフォーカス可能です子、セレクターで位置を示すのではなく、その子にフォーカスを当てたい。 私は多くの可能性を試しましたが、これまでのところ運がありません。 レイアウト: <ListView android:id="@android:id/list" android:layout_height="fill_parent" android:layout_width="fill_parent" /> ヘッダービュー: EditText view = new EditText(this); listView.addHeaderView(view, null, true); アダプターに他のアイテムがあると想定すると、矢印キーを使用すると、リストの選択が期待どおりに上下に移動します。しかし、ヘッダー行に到達すると、セレクターにも表示されEditText、ジョグボールの使用に集中する方法がありません。注:意志をタップEditText するその時点でフォーカスされますが、これはタッチスクリーンに依存しているため、必須ではありません。 ListViewこれに関しては明らかに2つのモードがあります 。1 setItemsCanFocus(true).:セレクタは表示されませんがEditText、矢印を使用するとフォーカスを取得できます。フォーカス検索アルゴリズムは予測が難しく、どのアイテムが選択されているかについての視覚的なフィードバック(行にフォーカス可能な子があるかどうか)はありません。どちらもユーザーに予期しないエクスペリエンスを与える可能性があります。 2 setItemsCanFocus(false).:セレクターは常に非タッチモードで描画され、EditTextタップしてもフォーカスを取得できません。 さらに悪いことに、呼び出しeditTextView.requestFocus()はtrue を返しますが、実際にはEditTextフォーカスを与えません。 私は、ビジョン化は基本的に1&2のハイブリッドではなく、リストの設定場合ですよ何すべての項目がフォーカス可能かではありません、私はセットフォーカス特性にしたい単一、リスト内の項目ように選択からセレクタをシームレスに移行することフォーカスできない項目の行全体、およびフォーカス可能な子を含む項目のフォーカスツリーをたどります。 テイカーはいますか?