активность
private ArrayAdapter mAdapter;
OnCreate
ListView lv = (ListView) findViewById(R.id.my_list);
List<String> initialList = new ArrayList<String>(); //load these
mAdapter = new ArrayAdapter(this, android.R.id.text1, initialList)
lv.setadapter(mAdapter);
Когда событие происходит методом
mAdapter.add(newString);
ДОБАВЛЯТЬ в Arr ayAdpater автоматически позаботится о вызове notifyDataSetChanged()
и обновит дисплей.
TextWatcherВы не могли бы нуждаться в этой части, это, если вы хотите, чтобы текст, добавленный как только текст изменен, который, кажется, ваш вопрос, чтобы указать, - это рискованно, потому что вы можете получить частичные записи, поэтому я рекомендую сделано кнопка вместо этого, и в этом случае вы просто делаете afterTextChanged
в методе onClick
.
EditText editText = (EditText) findViewById(R.id.my_edit_text);
editText .addTextChangedListener(new TextWatcher(){
@Override
public void afterTextChanged(Editable arg0) {
//TODO: check it isnt emtpy
String text = arg0.getText().toString();
mAdapter.add(text);
//Hide the add item views again
arg0.setText("");
arg0.setVisibility(View.GONE);
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1,
int arg2, int arg3) { /*nothing*/ }
@Override
public void onTextChanged(CharSequence arg0, int arg1, int arg2,
int arg3) { /*nothing*/ }
});
у меня есть редактировать мое сообщение .. я не имею адаптер, потому что я не знаю, как я должен начать – mimu1011
я путаюсь объявление этот пункт .. я знаю, что я нужен переходник, но если у меня есть строки array Я добавляю строку из них в TextView .. знаю, что у меня нет String ... У меня есть макет, который нужно добавить? где ist my Problem, я настолько смущен – mimu1011
после того, как вы набрали текстовое представление, вам понадобится кнопка или наблюдатель текста, чтобы вызвать событие ... Когда это событие произойдет, вам нужно добавить строку в текст вашего адаптера и затем уведомлять об изменениях –