Как поместить информацию EditText в переменную Intent
Я пытаюсь получить информацию о пользователе, напечатанную в тексте редактирования. Я хочу сохранить его в Intent
переменная результата. Попытка отослать это назад к основной деятельности впоследствии. Продолжайте получать метод не может решить. Я думаю, должно быть, я пропускаю параметр в putExtra()
метод
public class EnterDataActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_enterdata);
Button doneButton = (Button) findViewById(R.id.button_done);
final EditText getData = (EditText) findViewById(R.id.enter_data_here);
doneButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent result = new Intent();
result.putExtra(getData);
setResult(RESULT_OK, result);
finish(); // Ends sub-activity
}//ends onClick
});
}//ends onCreate void button
}
2 ответа
Хорошо, если вы пытаетесь отправить EditText
это невозможно
Если вы пытаетесь отправить текст, который на этом EditText
это возможно
Как это сделать?
Объявить String
сохранить данные (Вы можете избежать этого шага, но это более понятно)
String mText = getData.getText().toString();
Тогда вы будете использовать getExtra() method
отправить String
к новому Activity
Intent i = new Intent(this, MyNewActivity.class);
i.putExtra("text_from_editText", mText);
startActivity(i);
Затем последний шаг (вы не просите об этом, но он вам понадобится), получите текст.
//onCreate() of the second Activity
Intent i = getIntent();
String mText = i.getStringExtra("text_from_editText");
Замещать result.putExtra(getData);
с result.putExtra(getData.getText().toString());
чтобы получить текст из EditText. Прямо сейчас вы пытаетесь поместить весь объект EditText в намерение в качестве дополнительного, а не просто текст из EditText.