問題是您的按鈕不會自動換行到屏幕的下一部分。您必須具體告訴Android您希望如何定位視圖。您可以使用ViewGroups(例如LinearLayout或RelativeLayout)來執行此操作。
LinearLayout layout = (LinearLayout) findViewById(R.id.linear_layout_tags);
layout.setOrientation(LinearLayout.VERTICAL); //Can also be done in xml by android:orientation="vertical"
for (int i = 0; i < 3; i++) {
LinearLayout row = new LinearLayout(this);
row.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
for (int j = 0; j < 4; j++ {
Button btnTag = new Button(this);
btnTag.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
btnTag.setText("Button " + (j + 1 + (i * 4));
btnTag.setId(j + 1 + (i * 4));
row.addView(btnTag);
}
layout.addView(row);
}
我假設R.id.linear_layout_tags
是你的XML這項活動的父的LinearLayout。
基本上你在這裏做的是你正在創建一個LinearLayout,它將成爲一行以容納你的四個按鈕。然後按鈕被添加,並且每個按鈕被分配一個數字作爲它們的ID。一旦添加了所有按鈕,該行就會添加到您的活動佈局中。然後它重複。這只是一些僞代碼,但它可能會起作用。
哦,下次一定要花費更多的時間在你的問題......
https://stackoverflow.com/questions/how-to-ask
我的第一個想法是改變ListView的自定義SimpleCursorAdapter中的getView(),但可能更容易以編程方式放置按鈕。所以,我在這裏問。可能有人決定了這個問題。 – Sviatoslav
我可以爲你解答,但問題已關閉:/ –
@ B.Young:重新打開。 –