2012-11-19 5 views
7

いくつかフォローされていますが、理解できません。
addPreferencesFromResource(R.xml.preferences)の使用は推奨されていません。android 2.XのaddPreferencesFromResourceの使い方は?

が最良の方法は、利用可能な唯一の後に3.0、私は従うよ道

アンドロイドバージョン2.xのために行う必要がありますfragmentが、フラグメントを使用することですか?

+0

どのように@PollHallenを解決しましたか? – gumuruh

答えて

4

Androidでは、「推奨しない」とは、「考慮する必要があると思われる別の解決策がある」ことを意味します。特に、このような状況では、をAndroid 2.xに使用する以外は選択できません.onBuildHeaders()(APIレベル11+で使用されている方法)は存在しません。

あなたは両方をサポートするコードを作成することができます:ここでは

public class EditPreferences extends SherlockPreferenceActivity { 
    @SuppressWarnings("deprecation") 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    if (Build.VERSION.SDK_INT<Build.VERSION_CODES.HONEYCOMB) { 
     addPreferencesFromResource(R.xml.preferences); 
     addPreferencesFromResource(R.xml.preferences2); 
    } 
    } 

    @Override 
    public void onBuildHeaders(List<Header> target) { 
    loadHeadersFromResource(R.xml.preference_headers, target); 
    } 
} 

を、我々はAPIレベル10以下にAPIレベル11+とaddPreferencesFromResource()ためonBuildHeaders()を使用しています。このコードが引かれたHere is the complete sample project

関連する問題