私はカスタムExpandableList(下の例の画像を参照)を使用しており、各アイテムには常に1つの子があります。この子は3つの部分で構成されています。各部分にはヘッダー(赤いバー)があり、その下には空のアイテムまたはアイテムのリストがあります。このリストの長さは異なります。
これを行う最初の方法は、空のアイテムの下にViewStubを追加することです。これは、カスタムビューで膨らませました。これには、次のアイテムのために順番に膨らませた最後にViewStubも含まれているため、アイテムを再帰的に追加して作成します。この種のアイテムのリスト。悲しいことに、これにより、リストが長くなりすぎたときにStackOverflowErrorが発生しました(短いリストでは、これは完全に機能しました)。
そのため、2回目の試行では、代わりにカスタムアダプタでListViewを使用してみました。残念ながら、このリストは画面のごく一部と、次の部分のヘッダーの後ろに隠れている残りのアイテムのみを使用していました(このミニリストは、2番目のスクロールバーが横に表示されたためスクロール可能に見えましたが、スクロールしませんでした。スクロールリスト内でのこのスクロールは良い解決策であると考えますが、これについて言及したかっただけです)。
このアイテムのリストをスクロールできないように指示して、必要なすべてのスペースを占有する方法を教えてもらえますか(子ノードが作成されたときにどのサイズになるかわかりますか??)、または私の問題の代替解決策は?(ああ、私はレイアウト内に不潔な量のViewStubsを入れることを検討しましたが、それはばかげて本当に悪い習慣のようです。間違っている場合は訂正してください)