2016-05-21 17 views
1

私はメインメニューでバッテリーのパーセンテージを追加することでcyanogenmod設定apkを修正しようとしていますが、このエラーのためにこれを行うことができません: "メソッドfindPreference(文字列)"は未定義です "findActivityでfindPreferenceが未定義

private void setStringSummary(String preference, String value) { 
    try { 
     findPreference(preference).setSummary(value); 
    } catch (RuntimeException e) { 
     findPreference(preference).setSummary(
      getResources().getString(R.string.device_info_default)); 
    } 
} 
:私はあなただけこれは私がそれを呼んでいる方法です

(私のコードは、のは、DEVICEINFOタブを言わせで動作しない理由を説明している)preferencefragmentからこれを呼び出すことができると聞きました

私は既に "SettingsActivity.this.findPreference(s "mContext.findPreference(string)"と同様にエラーが発生しました。

これには解決策がありますか、それともfindPreferenceを置き換えるのでしょうか?

ありがとうございます!

+0

'getBaseContext()。findPreference(...)'を試したことがありますか? –

答えて

0

間違った場所で間違いなく呼び出しています。あなたが書いたコードは、SDK < 11代わりに使用PreferenceActivity場合、またPreferenceFragment

public class PrefsFragment extends PreferenceFragment { 
... 
} 

を拡張フラグメントの一部である必要があります。