2011-08-03 110 views
14

所以現在我有一個文本字段,下面有一個按鈕(add +)。Android - 按下按鈕時將textview添加到佈局

我想讓它每次輸入文本字段中的文本,然後按下添加按鈕時,新的文本視圖將添加到它下面的垂直佈局,並且用戶在字段中鍵入的文本。

我不想簡單地使文本視圖不可見,然後點擊時可見,因爲我希望他們能夠添加多個文本視圖並輸入任何文本。

+0

使用addView方法ViewGroup類,它會幫助你獲得更多信息,請參閱:http://developer.android.com/reference/android/view/ViewGroup.html – sunriser

回答

31

此代碼包含你想要的。 (該視圖顯示一個EditText和一個按鈕,點擊該按鈕後,該文本將增加的LinearLayout)

private LinearLayout mLayout; 
private EditText mEditText; 
private Button mButton; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    mLayout = (LinearLayout) findViewById(R.id.linearLayout); 
    mEditText = (EditText) findViewById(R.id.editText); 
    mButton = (Button) findViewById(R.id.button); 
    mButton.setOnClickListener(onClick()); 
    TextView textView = new TextView(this); 
    textView.setText("New text"); 
} 

private OnClickListener onClick() { 
    return new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      mLayout.addView(createNewTextView(mEditText.getText().toString())); 
     } 
    }; 
} 

private TextView createNewTextView(String text) { 
    final LayoutParams lparams = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 
    final TextView textView = new TextView(this); 
    textView.setLayoutParams(lparams); 
    textView.setText("New text: " + text); 
    return textView; 
} 

和XML是:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:id="@+id/linearLayout"> 
<EditText 
    android:id="@+id/editText" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
/> 
<Button 
    android:id="@+id/button" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="Add+" 
/> 

+0

我現在愛你。 – user802609

+0

真的很棒的傢伙 – Harshid

+0

我們如何添加一個textview到另一個活動?我想從我的第二個活動中的按鈕點擊我的第一個活動添加一個textview – CraZyDroiD

相關問題