0

この問題が以前に議論されたことは知っていますが、適切な答えが見つかりませんでした。3 行 2 列のテーブルが必要です。左の列はタイトル、右の列は項目のリストです。

したがって、3 つのリストが上下にあり、画面全体をスクロール可能にしたいと考えています (各リストを個別にスクロール可能にするわけではありません)。

解決策は、 aScrollViewをメイン コンポーネントとして使用し、次に aを使用しTableView、次に aListViewを表の右側の列に使用することです。問題は、それListViewがスクロール可能なコンポーネントであり、 内では機能しないことScrollViewです。

私の質問 - Android API の一部であれ、サードパーティであれ、ListView機能はあるがサイズが固定されているコンポーネントはありますか? onItemClick()アダプターの機能と機能 (クリックされた項目の位置がわかります)を楽しみたいと思います。

ありがとう

ListView編集: の高さを手動で設定する提案を試みましたが、その結果ListView、実際に必要に応じて拡張されるはずだった領域がリスト要素が表示されませんでした。

次のコードを使用しました。

ListView lv = (ListView)view.findViewById(R.id.list);
lv.setAdapter(adapter);
LinearLayout.LayoutParams lParams = new LinearLayout.LayoutParams(lv.getLayoutParams());
lParams.height = calculateHeight(lv);
lv.setLayoutParams(lParams); 

最後の 3 行がなくても問題なく動作しますが、サイズが固定されるため、元の問題に戻ります。

4

1 に答える 1

2

あなたの期待から私が推測するのは、あなたが探しているものです

( タイトル, (ListView) )

( タイトル, (ListView) )

( タイトル, (ListView) )

これが探しているものである場合は、tableView をメイン レイアウトとして使用でき、固定の高さを指定して listView をスクロールできないようにすることができます。

それを行う方法は、各子ビューの高さとその仕切りの高さを測定し、リストビューのレイアウトパラメーターを正確な高さに設定する必要があります。その後、リストビューはスクロールできませんが、テーブルビュー全体はスクロール可能です。

こちらのリンク先をご覧いただきたいと思います。 http://iserveandroid.blogspot.sg/2011/06/how-to-calculate-lsitviews-total.html

レイアウトをコンテンツ ビューとして設定したら、アダプターをリストビューに設定する必要があり、すぐに (計算された高さ)layoutparams をリストビューに設定する必要があります。

于 2013-05-01T06:10:31.977 に答える