关闭对话框片段后保持价值

问题描述

我通过扩展AppCompatDialogFragment()创建对话框。我有一个EditText字段和一个正数/负数button。当我单击正数button时,我希望将值保留在EditText上,因此,当我重新打开对话框时,该值将已经写入那里。@H_502_11@

正向按钮(在onCreateDialog()内部)-我向MainActivity发送文本@H_502_11@

.setPositiveButton("apply",DialogInterface.OnClickListener(){ _: DialogInterface,_: Int ->
            (activity as MainActivity?)?.updateDelay(textDelay.text.toString())
        })

解决方法

您可以使用一个接口,如果对话框关闭,该接口可以将值传回:
https://stackoverflow.com/a/27761620/9077356

如果您要永久存储该值并在整个项目中使用它,也可以将其存储在Sharedpreferences中。

这是一个非常简单的有关如何使用SharedPreferences的教程:
https://dev.to/victordgrandis/how-to-store-data-in-sharedpreferences-3a36

,

如果要在打开应用程序时保存此值 像在JAVA中那样使用静态值

public static String objectName = "";

和科特林

companion object {

var objectName : String= ""
}