2011-02-10 11 views
4

私はこの(抽象化)のようなレイアウトを持っているのサイズを変更する方法:アンドロイドScrollView

Scrollview - fill_parent

のLinearLayout - wrap_content

ImageViewの1 - wrap_content

ImageViewの2 - 。 ..

ImageView 3

...

ユーザーインタラクションの過程で、画像の一部が大きくなったり小さくなったりして、スクロールする領域が短くなったり、長くなったりします。 それが問題です。スクロールビュー(SV)は変更を知らないので、一番下の空きスペースをスクロールしたり、一番下の画像を切り取ったりすることができます。

質問1:LiearLayout(LL)の変更された高さに何とかしてSVの読み取りを行うことはできますか?

質問2:LLでgetHightを使って現在のサイズを取得できます。しかし、変更されたLayoutParamsを介してそれをSVに提供することはできません。もちろん、それは画面上のSVの高さのみを変更します。何とかLLの変更された高さをコード内のSVに入れる方法はありますか?

質問3:まだ試したことはありません。 SV、LL、その子をコードで作成し、必要に応じて変更されたサイズの子を追加/削除すると、SVは変更に適応しますか?

最後の質問:ListViewを使用する以外は、より良いaupproachはありますか?

答えて

2

画像が変更されたときにrequestLayout()を呼び出してみましたか?

+1

はい。無効。 – user611923