0

さまざまなサイズの画像がたくさんあります。それらのそれぞれは、画面の上部に表示する必要があり、画面の高さの 60% に等しい高さのスペースを取る必要があります。初期比率を維持するために、画像の幅は高さに依存します。weightsumレイアウトのweightプロパティと のプロパティを使用しようとしましたが、画像ビューImageViewのプロパティに何を入れればよいかわかりません。height「wrap_content」の場合、すべての画像が ImageView のサイズを変更し、すべてのマークアップがクラッシュします。何かアドバイスはありますか?

4

1 に答える 1

1

必要に応じて、コードで画像のサイズを設定できます。weight_sum メソッドで幅を設定してから、次のようにします。

 WindowManager manager = (WindowManager) context.getSystemService(Activity.WINDOW_SERVICE);
 int screenHeight = manager.getDefaultDisplay().getHeight();
 YOUR_VIEW.getLayoutParams().height = (int) (screenWidth * 0.6);

ImageView が画面に描画された後にのみ実行できることに注意してください。そのため、onCreate() メソッド内で呼び出しても機能しません。遅延 (postDelayed) と呼ぶか、ビューの 1 つにレイアウト リスナーを設定することができます。

お役に立てれば。

于 2012-10-21T16:55:21.320 に答える