お世話になっております。
ScrollBoxとExpandableAreaを用いてツリー構造の項目を表示するウィジェットを作成して、Navigationによる方向キーでの項目選択を実装したいと考えておりますが
添付画像のような階層構造で実装したところ、以下2つの現象が発生してしまいますが、対処方法などご存知であればご教授お願いします。
- 上下のキー入力するとExpandableAreaのHeaderしかフォーカスがあたらず、末尾のExpandableAreaのみBody内のボタンウィジェットにフォーカスがあたります。
- フォーカスがかかったBody内のボタンウィジェットから上下のキー入力すると付近のボタンにフォーカスがかからず、何故かExpandableAreaのHeaderにフォーカスがかかってしまいます。
再現手順
・上下のキー入力するとExpandableAreaのHeaderしかフォーカスがあたらず、末尾のExpandableAreaのみBody内のボタンウィジェットにフォーカスがあたります。
- アプリ実行後、ScrollBox内のいずれかにフォーカスがかかっていることを確認
- 方向キーの上または下を入力するとExpandableAreaのBody内のボタンにフォーカスがかからず、Headerのみフォーカスがかかります。
・フォーカスがかかったBody内のボタンウィジェットから上下のキー入力すると付近のボタンにフォーカスがかからず、何故かExpandableAreaのHeaderにフォーカスがかかってしまいます。
- ScrollBox内にあるExpandableArea内のボタンウィジェットをクリックなどしてフォーカスがかかることを確認
- 方向キーの上または下を入力すると上下付近のボタンウィジェットにフォーカスがかからず、近くのHeaderのみフォーカスがかかります。
お世話になっております。
ご連絡が遅くなってしまい申し訳ございません。また、サンプルプロジェクトを共有いただきありがとうございます。こちらの挙動はScrollBoxにおける孫ウィジェットへのナビゲーションが移動しない現状の制限となっております。以下のスレッドでエンジン改造せずに対応する方法が提案されていますので、こちらが有効かどうかをご確認頂けますと幸いです。
[Content removed]
[Content removed]
添付画像のようにScrollBoxとExpandableAreaの間にVerticalBoxを挿入することで問題の解消ができましたが、デザイナーの作業コストを考慮してリンクの対処方法で修正することにしました。
ScrollBox内のExpandableAreaにフォーカスがあたった時のみご提示のFNavigationConfigの派生クラスに変更する方法によって修正できたことを確認できました。
ご回答いただきありがとうございました。