[英]Dynamic layout for textview - android
我正在從服務器獲取字符串數。
我想在下圖所示的布局上顯示它
每次我都會得到不同類型的字符串。 那么如何為textview創建動態布局?
可能是您正在尋找“ Flow Layout
。
使用此代碼,我們可以在textview內部動態創建線性布局。 如果需要,只需將代碼修改為上面要求的內容即可。
onCreate() Method :
private Button[] btnAdd ,btnQuestionPalete ; // GLobally
private LinearLayout layout_button ;
layout_button = (LinearLayout) findViewById(R.id.button_layout);
btnAdd = new Button[100] ;
LayoutParams param2 = new LinearLayout.LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT, 1f);
btnQuestionPalete = new Button[100];
for (int i = 0; i < noOfButton; i++) {
linearQuestionPalettesRow = new LinearLayout(getApplicationContext());
linearQuestionPalettesRow.setOrientation(LinearLayout.VERTICAL);
linearQuestionPalettesRow.setLayoutParams(param2);
linearQuestionPalettesRow.setPadding(10, 10, 10, 10);
textView[i] = new TextView(getApplicationContext());
textView[i].setId(i+1);
textView[i].setText("test");
textView[i].setTextColor(Color.BLACK);
textView[i].setGravity(Gravity.CENTER_HORIZONTAL);
linearQuestionPalettesRow.addView(textView[i]);
layout_button.addView(linearQuestionPalettesRow);
}
xml code :
<LinearLayout
android:id="@+id/button_layout"
android:layout_width="wrap_content"
android:layout_height="75dp"
android:orientation="horizontal"
>
</LinearLayout>
只需將字符串添加到array / arraylist並使之成為arrayadapter即可 ,然后將listView或DridView傳遞給它很容易
您可以使用表布局來動態實現此目的。 但我認為您希望以鋸齒形的方式布局:
------------------ ------------------ ------------------ ------------------
因此您可以使用ListView
(高效)來完成此操作,但是如果您不希望使用此模式並且行數不超過5-10,則可以使用TableLayout
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.