各行がプログラムで作成されるテーブル レイアウトがあります。
構造は基本的に、各行に対して次のとおりです。
TextView、LinearLayout、LinearLayout、LinearLayout、Button。
各 LinearLayout には、複数の ImageView が含まれています。境界線が接触してレンダリングされるので、ImageView アイテム間の間隔を広げたいと思います。
ここで提案を試しました-Androidでは、LinearLayoutの子の間にスペースを作る方法は? - 私は次のようにパラメータを作成します:
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FillParent, LinearLayout.LayoutParams.WrapContent);
コントロールを追加するときに、次のように画像ビューに設定します。
linearLayout1.AddView(image1);
linearLayout1.AddView(image2, layoutParams);
linearLayout1.AddView(image3);
中央の項目にのみ設定していることに注意してください。これは、達成しようとしているものには左右のマージンで問題ありません。
問題は、レイアウト パラメータにマージンを設定しなくても、つまりインスタンス化して上記のように設定するだけで、左に約 35 ピクセルのマージンが追加され、必要以上に大きなマージンが発生することです。1px で SetMargins を呼び出しても、マージンは変更されません。
どこが間違っていますか?