1. ホーム
  2. android

[解決済み] Androidでカスタムビューの高さと幅をプログラムで設定する

2022-04-29 18:16:48

質問

という名前のカスタムビューを作成しました。 Graphview . 以下は、GraphViewクラスの構造です。

public class GraphView extends View {

    public GraphView(Context context, float[] values, String title, String[] horlabels, String[] verlabels, boolean type) {
        super(context);
                ........
   }

   ..................
   .................
}

を使用して、タブローにビューを追加しました。 addview() . 正常に動作しています。さて、私は、高さと幅を GraphView . どうすればいいのでしょうか?

どのように解決するのですか?

ビューの正確なサイズがわかっている場合は、単に setLayoutParams() :

graphView.setLayoutParams(new LayoutParams(width, height));

あるいはKotlinで。

graphView.layoutParams = LayoutParams(width, height)

しかし、より柔軟なアプローチが必要な場合は、以下のようにオーバーライドします。 onMeasure() を使用して、利用可能なスペースとレイアウトの制約に応じて、より正確にビューを測定することができます ( wrap_content , match_parent または固定サイズ)。の詳細については onMeasure() アンドロイド・ドックス .