2013-07-14 21 views
6

PreferenceFragement'u kullanarak modern bir SettingsActivity ürünüm var. Düzeni tamamen XML olarak tanımladım. Ayarımda tercih edilen bir alt ekran var. Üzerine tıklayarak yeni bir PreferenceScreen gösterilmektedir.Android: Tercih edilen abonelikten xml'deki işlem çubuğuyla nasıl geri dönülür?

Görünüşe göre, geri düğmesini kullanarak ana ayar ekranına geri dönebilirim. Abonelikte ActionBar üzerinden navigasyonu etkinleştirmenin bir yolu var mı? XML ile etkinleştirmeyi tercih ederim. peşin

sayesinde kaolick

DÜZENLEME:

Ben sol tarafta gibi sağ tarafta aynı istiyorum: Burada

enter image description here

göre kodudur Google'dan snippet:

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> 
    <!-- opens a subscreen of settings --> 
    <PreferenceScreen 
     android:key="button_voicemail_category_key" 
     android:title="@string/voicemail" 
     android:persistent="false"> 
     <ListPreference 
      android:key="button_voicemail_provider_key" 
      android:title="@string/voicemail_provider" ... /> 
     <!-- opens another nested subscreen --> 
     <PreferenceScreen 
      android:key="button_voicemail_setting_key" 
      android:title="@string/voicemail_settings" 
      android:persistent="false"> 
      ... 
     </PreferenceScreen> 
     <RingtonePreference 
      android:key="button_voicemail_ringtone_key" 
      android:title="@string/voicemail_ringtone_title" 
      android:ringtoneType="notification" ... /> 
     ... 
    </PreferenceScreen> 
    ... 
</PreferenceScreen> 
+0

hala bu sorun var mı? Çözmeyi biliyorum. – ffleandro

+0

@ffleandro Evet, yapıyorum. Çözümün için memnun olurum. – kaolick

+0

Bu sorun için bir çözüm buldunuz mu? Şu anda aynı problemle karşı karşıyayım;) – user1567896

cevap

1

onCreate() numaralı telefona ilk olarak getActionBar().setDisplayHomeAsUpEnabled(true);'u ekleyin.

Sonra deneyin:

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    if(android.R.id.home == item.getItemId()){ 
     // try one of these: 

     // dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_BACK)); 

     // getFragmentManager().popBackStack(); 

     // finish(); 

     return true; 
    } 

    return super.onOptionsItemSelected(item); 

} 
+0

Denedim ama bu çalışmıyor. Daha önce de söylediğim gibi 'SettingsActivity'imde' Actionbar'da gezinme var. Aboneme ihtiyacım var (yukarıdaki resme bakın). – kaolick