2016-11-07 5 views
0
import android.os.Bundle; 
import android.preference.PreferenceFragment; 
import android.support.v4.app.FragmentManager; 
import android.support.v4.app.FragmentTransaction; 
import android.support.v7.app.AppCompatActivity; 

import static android.R.attr.fragment; 

public class AppPreferences extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_note_detail); 

     FragmentManager fragmentManager = getSupportFragmentManager(); 
     FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 

     SettingsFragment settingsFragment = new SettingsFragment(); 
     // fragmentTransaction.add(android.R.id.content, settingsFragment, "SETTING_FRAGMENT"); 

начиная ошибки здесь settingsFragment и ошибка Error: (25, 94) ошибка: несовместимые типы: SettingsFragment не может быть преобразован фрагментироватьОшибка: (25, 94) ошибка: несовместимые типы: SettingsFragment не может быть преобразован в фрагментировать

FragmentTransaction setting_fragment = fragmentTransaction.add(android.R.id.content, settingsFragment, "SETTING_FRAGMENT"); 
setting_fragment.commit(); 

и это мой settingsFragment

public static class SettingsFragment extends PreferenceFragment{ 

    @Override 
    public void onCreate(Bundle savedInstanceState){ 
     super.onCreate(savedInstanceState); 

     addPreferencesFromResource(R.xml.app_preferences); 
    } 
} 
+0

Попробуй изменить android.R.id.content для R.id.content – AbhayBohra

ответ

0

вы должны использовать (если вы хотите сохранить совместимости) PreferenceFragmentCompat включены в опорном v7 библиотека совместимости.

PreferenceFragment не включен в набор совместимых фрагментов, поэтому для ваших пор должно хватить PreferenceFragment на PreferenceFragmentCompat.

Проверьте this вне.

Надеется, что это помогает

+0

все еще не работает –

+0

Такая же ошибка? Любая разница? @ThetruesAbdallah обновить вопрос с вашими изменениями – zozelfelfo

+0

'public static class SettingsFragment extends PreferenceFragmentCompat { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Load the preferences from an XML resource addPreferencesFromResource(R.xml.app_preferences); }' ошибка теперь не может решить PreferenceFragmentCompat –

0

эй я получил решение моей проблемы

public class AppPreferences extends AppCompatActivity {

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.activity_note_detail); 

Проблемы была с этим кодом здесь так и это getSupportFragment(); так я использую только getFragmentManager(); и его работу // FragmentManager fragmentManager = getSupportFragmentManager(); // FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();

SettingsFragment settingsFragment = new SettingsFragment(); 
    FragmentTransaction setting_fragment; 
    setting_fragment = getFragmentManager().beginTransaction().add(android.R.id.content, settingsFragment, "SETTING_FRAGMENT"); 
    setting_fragment.commit(); 


} 

public static class SettingsFragment extends PreferenceFragment { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     // Load the preferences from an XML resource 
     addPreferencesFromResource(R.xml.app_preferences); 
    } 
} 


} 

Смежные вопросы