我想将这两个按钮动态添加到may布局中。
Button settingsButton = new Button(this);
settingsButton.setText("Settings");
View view = findViewById(R.id.content_frame);
int width = view.getWidth() / 5;
int height = view.getHeight() / 5;
settingsButton.setLayoutParams(new LinearLayout.LayoutParams(Math.max(width, height), Math.min(width, height)));
((ViewGroup) view).addView(settingsButton);
Button entryButton = new Button(this);
entryButton.setText("add Entry");
entryButton.setLayoutParams(new LinearLayout.LayoutParams(Math.max(width, height), Math.min(width, height)));
((ViewGroup) view).addView(entryButton);
现在,为了使按钮不出现在彼此的顶部,我尝试给第二个按钮留出一定的空白,例如:
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(Math.max(width, height), Math.min(width, height));
params.setMargins(Math.max(width, height), 0, 0, 0);
然后
((ViewGroup) view).addView(entryButton, params);
或者
entryButton.setLayoutParams(params);
((ViewGroup) view).addView(entryButton);
两者都没有改变任何东西。有任何想法吗?谢谢!
您可能必须使用
ViewGroup.MarginLayoutParams.setMargins
做这样的事情将达到目的:
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setOrientation(LinearLayout.HORIZONTAL);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(10, 10, 10, 10);
Button button = new Button(getActivity());
button.setText("My Button");
linearLayout.addView(button, layoutParams);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句