Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I had the same problem and solve it thanks to Xuelong and <em>getDialog()</em> but without needing to manage <em>onPreferenceTreeClick()</em>.</p> <ol> <li>You need to keep an instance (myPreferenceScreen) of the PreferenceScreen you want to return from</li> <li>You have to give him a key in XML</li> <li>Retrieve the instance with findPreference("MyPreferenceScreenKey");</li> <li>Once you have to return , use this method : myPreferenceScreen.getDialog().dismiss()</li> </ol> <p>You will then return from where you came from.</p> <p>Here is a epurated example :</p> <p>Xml file :</p> <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"&gt; &lt;ListPreference android:key="contactList"/&gt; &lt;PreferenceScreen android:title="My Sub Preference Screen ..." android:key="mySubScreenKey"&gt; &lt;EditTextPreference android:key="foo1"/&gt; &lt;/PreferenceScreen&gt; &lt;/PreferenceScreen&gt; </code></pre> <p>Java file :</p> <pre><code>public class ParanoidPreferenceManager extends PreferenceActivity { ListPreference contactList; EditTextPreference foo1; PreferenceScreen mySubScreenKey; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //Load XML preference file addPreferencesFromResource(R.xml.preferences); contactList = (ListPreference) findPreference("contactList"); foo1= (EditTextPreference) findPreference("foo1"); screenContact = (PreferenceScreen) findPreference("screenAddContact"); foo1.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { mySubScreenKey.getDialog().dismiss(); return false; } }); } } </code></pre> <p>That's it</p> <p>Sorry for presentation, this is my first post on this site.</p> <p>Bye dudes</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload