2012-01-17 4 views
1

Android 용 간단한 문제가 있습니다. 버튼으로 채워진 n x n 테이블을 만들고 싶습니다. 먼저 화면의 너비와 높이의 최소값을 계산하려고합니다 (화면에 내 테이블 전체를 표시하려는 경우). 다음 코드를 가지고 있습니다 :Android 용 버튼으로 채워진 표를 만드는 방법

Display display = getWindowManager().getDefaultDisplay(); 
int width = display.getWidth(); 
int height = display.getHeight(); 
int min = Math.min(width, height); 
int buttonSize = (int)Math.floor(min/dimension); 

TableLayout rootLayout = (TableLayout)this.findViewById(R.id.tableLayout1); 

for (int i = 0; i < dimension; ++i) 
{ 
    LinearLayout lLayout = new LinearLayout(this); 
    lLayout.setOrientation(0); 
    rootLayout.addView(lLayout); 

    for (int j = 0; j < dimension; ++j) 
    { 
    Button b = new Button(this); 
    b.setText("-"); 
    b.setPadding(0, 0, 0, 0); 
    b.setWidth(buttonSize); 
    b.setHeight(buttonSize); 

    lLayout.addView(b); 
    } 
} 

버튼의 너비와 높이가 설정되지 않는 이유를 알 수 없습니다. 나는 너비와 높이를 지정하여 디자이너에서 테이블을 채우려고 시도했다.

정말 도움이됩니다.

답변

1

각 버튼의 LinearLayout.LayoutParams도 설정하겠습니까? 그것을 줘.

b.setLayoutParams(
    new LinearLayout.LayoutParams(width, height) 
); 
+0

고맙다, @AJcodez. 내 하루를 구 했으니 참으로 매력적 이었어. – Zoliqa

관련 문제