【发布时间】:2014-05-04 10:34:26
【问题描述】:
在RelativeLayout的规则上苦苦挣扎之后,我投降了。所以,我非常感谢您的帮助。
我正在尝试加载一些 标签 数组,并制作这些标签的按钮。所以,以编程方式,我正在这样做。 为此使用 RelativeLayout,因为在 LinearLayout 中,有 2 个方向:vertical 或 horizontal。
动态添加按钮的代码:
RelativeLayout innerLayout = (RelativeLayout) findViewById(R.id.innerRelativeLayout);
String tags[] = {"friends","love","motivate","sad","party","fun"};
for (int i = 0; i < tags.length; i++) {
Button bt = new Button(this);
bt.setText(tags[i]);
bt.setId(i+1);
bt.setBackgroundResource(R.drawable.radius_button_selector);
bt.setPadding(10, 10, 10, 10);
bt.setTextSize(20);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
if (i == 0) {
params.addRule(RelativeLayout.ALIGN_PARENT_START);
}
else {
params.addRule(RelativeLayout.RIGHT_OF, bt.getId() - 1);
}
params.setMargins(0, 0, 10, 10);
bt.setLayoutParams(params);
innerLayout.addView(bt);
}
我得到的是:(图片截图)
我想要达到的目标:
我希望所有按钮并排放置,当按钮从屏幕宽度溢出时,它们应该出现在下一行。 类似这样的:(图片截图)
我是布局方面的菜鸟。请帮帮我!
谢谢
最好的问候
【问题讨论】:
-
你需要的是this
-
没有。我认为这根本与我的问题无关。
标签: android android-layout android-relativelayout