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

问题描述

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

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

.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= ""
}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...