Я пытаюсь получить значение в EditText и хранить его на общих предпочтениях, я это сделал:EditText создаются динамически: GetText() не возвращает значение
SharedPreferences participant;
Editor editor;
private EditText firstname = null;
private String name =null;
private LinearLayout formbis;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_participant);
participant = this.getSharedPreferences("participant", getBaseContext().MODE_PRIVATE);
editor = participant.edit();
formbis = (LinearLayout) findViewById(R.id.formbis);
firstname = new EditText(this);
firstname.setHint("first name");
firstname.setTextSize(12);
firstname.setLayoutParams(new LayoutParams(
LayoutParams.MATCH_PARENT,
LayoutParams.WRAP_CONTENT));
name = firstname.getText().toString();
editor.putString("key", name);
editor.commit();
formbis.addView(firstname);
Но когда я открываю sharedPreferences XML-файл я только найти это: нет значения от EditText:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="key"></string>
</map>
, так что я должен сделать, чтобы вернуть значение введенного пользователем текста? – kyokotsu
в фрагменте, который вы предоставляете пользователю, не успевает ввести текст. Когда вы вызываете фиксацию, вы опаздываете. Например, у вас может быть кнопка подтверждения, и когда вы нажмете на нее, в ее фиксации вызова onClick на своем edittext или вы сможете реализовать TextWatcher – Blackbelt
Можете ли вы дать мне больше объяснений, пожалуйста (я новичок), должен Я использую какой-то слушатель? – kyokotsu