HogeActivity.java
public class HogeActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Button button = findViewById(R.id.huga_button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Zeigen Sie einen Dialog an
DialogFragment dialog = new DialogFragment();
//Hinweis: getFragmentManager()Wird zu einem Fehler führen
dialog.show(getSupportFragmentManager(),"sample");
}
});
}
}
DialogFragment.java
public class BookReviewDialogFragment extends DialogFragment {
//Die Methode, die beim Generieren des Dialogs aufgerufen wird
public Dialog onCreateDialog(Bundle savedInstanceState) {
//Dialoggenerierung Die AlertDialog Builder-Klasse wird angegeben und instanziiert
AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(getActivity());
//Titeleinstellung
dialogBuilder.setTitle("Dialogtitel");
//Zu zeigende Texteinstellungen
dialogBuilder.setMessage("Bitte geben Sie den Wert ein");
//Eingabefeld erstellen
final EditText editText = new EditText(getActivity());
dialogBuilder.setView(editText);
//Schaltfläche OK erstellen
dialogBuilder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//Holen Sie sich den Wert von editText
String returnValue = editText.getText().toString();
//Holen Sie sich eine Instanz von HogeActivity
HogeActivity hogeActivity = (HogeActivity) getActivity();
hogeActivity.setTextView(returnValue);
}
});
//NG-Tastenerstellung
dialogBuilder.setNegativeButton("NG", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//Schließen, ohne etwas zu tun
}
});
//gibt dialogBulder zurück
return dialogBuilder.create();
}
}
■ Beziehen Sie sich auf die Zeichen der Schaltfläche OK des Dialogfragments aus @strings
Resources res = getResources();
//Erstellen Sie die Schaltfläche OKBuilder.setPositiveButton(res.getString(R.string.ok), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
Recommended Posts