Получил Null String, получая данные из EditText в android

Я получил нулевые данные при извлечении данных из текстового окна.

Мой код:

EditText msg=(EditText)findViewById(R.id.Et_Msg); String setMsg=msg.getText().toString(); Log.v("Messge","Message::"+setMsg); 

Скажите, пожалуйста, где я ошибаюсь?

Это ваш код,

 EditText msg=(EditText)findViewById(R.id.Et_Msg); String setMsg=msg.getText().toString(); Log.v("Messge","Message::"+setMsg); 
  • Первая строка инициализирует EditText. Когда это делается по умолчанию, в edittext нет значения (строки).
  • Во второй строке вы пытаетесь получить строку из пустой edittext , поэтому она дает вам NullPointerException .

Решение: предлагаю вам переместить строку String setMsg=msg.getText().toString(); В другом месте, где вы собираетесь использовать значение EditText.

Получая данные из EditText, вы должны create a listener orelse, вы получите значение как null для примерного нажатия кнопки. Например:

  public class A extends Activity implements OnClickListener{ Button btn; EditText edt; @Override public void onCreate(Bundle saved){ super.onCreate(saved); edt = (EditText) findViewById(R.id.your_id); btn = (Button) findViewById(R.id.your_id); btn.setOnClickListener(this); } @Override public void onClick(View v){ if(v == btn){ String setMsg=edt.getText().toString(); Log.v("Messge","Message::"+setMsg); } } } 

См. То, что вы делаете .. сразу после получения и объекта EditText на который вы вызываете getText() на нем .. мыслить логически. Очевидно, что нет ничего (он должен возвращать пустое, хотя не уверен, почему он сохраняет null) в EditText если у вас его нет в xml .. что-то вроде этого;

 <EditText ... android:text="Hey there" ... /> 

Попробуйте это .. или переместите getText() при некотором нажатии кнопки.

Пожалуйста, замените приведенную ниже строку

 String setMsg=msg.getText().toString(); 

с

 String setMsg = String.valueOf(msg.getText()); 

Пожалуйста, попробуйте выше. Ваша проблема будет решена.