Intereting Posts
Подключение к определенному Wi-Fi иногда не работает в Android Каковы различия между внутренним хранилищем, внешним хранилищем, SD-картой и съемным хранилищем? Appcelerator 4 не может найти Android SDK на Mac Android вокруг фонового изображения макетов, только верхние или нижние углы Можно ли использовать AccountManager, чтобы пользователи могли войти в свою учетную запись Google? Проблемы с суммой весов TableLayout Как получить путь к папке temp из собственного кода на Android? Отключить встроенную проверку орфографии на сэндвиче с мороженым Одновременное воспроизведение нескольких композиций с помощью MediaPlayer: только один из них действительно играет Ошибка в Eclipse (для Android): Тип java.lang.String не может быть разрешен. Это косвенно ссылается на требуемые файлы .class Синхронизация декодированных аудио и видео данных от Mediacodec Возвращает ли EditText.getText () значение null? Ошибка MediaPlayer для Android не воспроизводится Видео Mp4 в теге html5, не играющем в мобильном хром и мобильном сафари Cursoradapter с различными строками строк

Android – добавление текста в макет при нажатии кнопки

Поэтому прямо сейчас у меня есть текстовое поле с кнопкой (добавить +) под ним.

Я хотел бы сделать так, чтобы всякий раз, когда текст вводится в текстовое поле и нажимается кнопка «Добавить», новое текстовое представление добавляется к вертикальному расположению под ним с текстом, который пользователь вводил в поле.

Я не хочу просто делать текстовое представление невидимым, а затем видимым при нажатии, потому что я хотел бы, чтобы они могли добавлять несколько текстовых представлений с любым типом текста.

Solutions Collecting From Web of "Android – добавление текста в макет при нажатии кнопки"

Этот код содержит то, что вы хотите. (В представлении отображается 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+" />