I have been using my own preference class derived from EditTextPreference to include a neutral button (so that the user can select a default value). I did this by overriding onPrepareDialogBuilder (from searching stackoverflow of course. )
override fun onPrepareDialogBuilder(builder: AlertDialog.Builder?) { //So can set have a button to set the default value
super.onPrepareDialogBuilder(builder)
builder?.setNeutralButton("Default") { dialogInterface: DialogInterface, i: Int ->
text = sharedPreferences.getString(dftKey, "")
}
}
However, this method does not seem possible with the androidx EditTextPreference. Any suggestions on how to add a neutral button to androidx's EditTextPreference would be appreciated.
Having set up my settings activity as per https://developer.android.com/guide/topics/ui/settings I have found that I can add the PreferenceFragmentCompat.OnPreferenceDisplayDialogCallback interface to the AppCompatActivity and override onPreferenceDisplayDialog to show my own dialog.
Edit 15/1/23 Someone wanted to know more about fun myPrefDialog, so I have added some more code. Hope it helps. It makes it rather lengthy and not "completely complete"