화면을 채우고 여백이있는 버튼으로 LinearLayout을 만들기 위해 XML이 아닌 Java를 사용하려고합니다 . 여백없이 작동하는 코드는 다음과 같습니다.
LinearLayout buttonsView = new LinearLayout(this);
buttonsView.setOrientation(LinearLayout.VERTICAL);
for (int r = 0; r < 6; ++r) {
Button btn = new Button(this);
btn.setText("A");
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT); // Verbose!
lp.weight = 1.0f; // This is critical. Doesn't work without it.
buttonsView.addView(btn, lp);
}
ViewGroup.LayoutParams lp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT);
setContentView(buttonsView, lp);
그래서 그것은 잘 작동하지만 어떻게 지구상에서 버튼 사이에 공간이 있도록 버튼 여백을 제공합니까? 나는 사용하여 시도 LinearLayout.MarginLayoutParams
,하지만 전혀 없다 weight
가 더 좋은 없습니다 있도록 회원. 그리고 lp
생성자에서도 전달하면 작동하지 않습니다 .
불가능합니까? 외관상으로는 XML에서만 할 수있는 최초의 안드로이드 레이아웃 작업이 아니기 때문입니다.