2012-05-10 8 views
7

Nella mia app per Android voglio mostrare una finestra di dialogo se l'utente seleziona qualcosa di simile a un testo normale in una schermata di preferenza. Ho visto How to open AlertDialog from preference screen?, ma quella soluzione viene lanciata da un CheckBoxPreference.Come aprire una finestra di dialogo da una voce di testo su PreferenceScreen?

Nel mio caso, mi piacerebbe lanciare da qualcosa che assomiglia a un TextView (o suppongo che potrebbe essere un pulsante), e quindi porterebbe a una finestra di dialogo "Informazioni" che ho già. Qualche suggerimento su come farlo? Grazie.

risposta

15

file di preferences.xml:

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> 
    <Preference android:key="dialog_preference" /> 
</PreferenceScreen> 

attività:

addPreferencesFromResource(R.xml.preferences); 

dialogPreference = (Preference) getPreferenceScreen().findPreference("dialog_preference"); 
dialogPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() { 
     public boolean onPreferenceClick(Preference preference) { 
      // dialog code here 
      return true; 
     } 
    }); 
+0

Grazie per la risposta, myki. Quale sarebbe il tipo xml per questa preferenza specifica? Attualmente, ho solo CheckBoxPreferences e EditTextPreferences. – gcl1

+0

Funziona, grazie mille! – gcl1

Problemi correlati