如何解决应用程序中不显示右键按钮边框的问题?

时间:2018-11-18 11:27:23

标签: java android android-studio

我正在尝试制作具有多个关卡的游戏。我的计划是在一页上打印15个级别。我已附上photo我当前正在使用的简单设计。

如您在图片中看到的,按钮的右边框未显示。对于父母,我正在使用以下Java代码:

public $appends = [ 'previously_ordered' ];

并在此LinearLayout中水平设置3个按钮,我将此代码用于按钮。这段代码只有一个简单的for循环,可以在此LinearLayout中放置3个按钮:

LinearLayout horl = new LinearLayout(this);
horl.setId(worldVar);
horl.setOrientation(LinearLayout.HORIZONTAL);
horl.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, 
                      ViewGroup.LayoutParams.WRAP_CONTENT));

函数getMarginInDp看起来像这样:

Button button = new Button(this);
LinearLayout.LayoutParams params = new LinearLayout
                                     .LayoutParams(getMarginInDp(100), getMarginInDp(100));

params.setMargins(getMarginInDp(1), getMarginInDp(25), getMarginInDp(1), 0);
button.setLayoutParams(params);
GradientDrawable gd = new GradientDrawable();
gd.setCornerRadius(5);
gd.setStroke(1, 0xFF000000);horl.addView(button);

有人想让边框看起来像是因为我想使按钮保持此大小,甚至可能略微增加边距,所以有人知道如何使边框出现吗?

1 个答案:

答案 0 :(得分:0)

您可以将每个按钮的权重设置为0.33f

Button button = new Button(this);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(getMarginInDp(100), getMarginInDp(100), 0.33f);

因此它们在布局的宽度上均匀分布。