Java コードで TableLayout を定義しました。行ごとに、3 つの ImageButton を表示しています。これらのボタンのいずれかが押されると、背景色が変わります。きれいに表示するために、10px のパディングを設定しました。
私が今抱えている問題は、隣り合った 2 つのボタンを押しても、ボタン間の区切りが正確に見えないことです。ImageButtons またはその他のソリューションにマージンを設定する可能性はありますか?
Java コードで TableLayout を定義しました。行ごとに、3 つの ImageButton を表示しています。これらのボタンのいずれかが押されると、背景色が変わります。きれいに表示するために、10px のパディングを設定しました。
私が今抱えている問題は、隣り合った 2 つのボタンを押しても、ボタン間の区切りが正確に見えないことです。ImageButtons またはその他のソリューションにマージンを設定する可能性はありますか?
試す
int leftMargin = 10;
((MarginLayoutParams) imageButton.getLayoutParams()).leftMargin = leftMargin;
編集:ImageButton
xmlで定義され
ていない場合は、次のように設定する必要がありますLayoutParams
:
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
params.leftMargin = 10;
b.setLayoutParams(params);
ここでLinearLayout
は、リスト項目で使用すると仮定します。
コントロールが入っているコンテナには必ず を使用してLayoutParams
ください。あなたの場合、ボタンは にあるTableRow
のでTableRow.LayoutParams
、他のタイプのパラメータを使用すると、コントロールはまったく表示されません。