Ich habe Formular in meinem Dialogfeld implementiert, und wenn positive Schaltfläche angeklickt wird, erzeuge ich neues Objekt in einer Datenbank. Ich habe eine globale Variable für EditText erstellt, funktioniert aber immer noch nicht. Wo ich Text-Wert von ihnen bekommen möchte, bekomme ich immer leere Zeichenfolge.EditText in DialogFragment gibt immer leere Zeichenfolge zurück
hier ist der Code:
EditText name, desc;
@Override
@NonNull
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = getActivity().getLayoutInflater();
view = inflater.inflate(R.layout.new_dialog, null);
name = (EditText) view.findViewById(R.id.workout_name);
desc = (EditText) view.findViewById(R.id.workout_description);
builder.setView(inflater.inflate(R.layout.new_dialog, null)).setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
MyDbHelper helper = new MyDbHelper (getActivity());
MyObj w = new MyObj();
w.setName(name.getText().toString(););
w.setDescription(desc.getText().toString());
w.setLevel(1);
long id = helper.createWorkout(w);
Toast.makeText(getActivity(), id+"", Toast.LENGTH_LONG).show();
callback.onPositiveButtonClick();
}
}).setNegativeButton("CANCEL", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
callback.onNegativeButtonClick();
}
});
return builder.create();
}
Irgendwelche Ideen bitte?
nein, ich habe keine Ausnahmen – Aligator