私はサービスを作成しているので、サービスから拡張されたサービスクラスがあります。私はPreferenceScreenからチェックボックスを取得しており、チェックされているかどうかに基づいてアクションを実行します。 CheckBoxPreferenceを取得するにはgetPreferenceManager()メソッドを使用します。しかし、それは赤い下線を持っています。上にカーソルを置くと、このエラーThe method getPreferenceManager() is undefined for the type BatteryService
が表示されます。私はメインクラスで同じコードを使用すると動作します。ここに私のコードですgetPreferenceManager()メソッドは、Android AppのBatteryServiceタイプでは未定義です
public int onStartCommand(Intent intent, int flags, int startId) {
initNotification();
final CheckBoxPreference checkboxPref = (CheckBoxPreference) getPreferenceManager().findPreference("cbAlarm");
checkboxPref.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
public boolean onPreferenceChange(Preference preference,
Object newValue) {
if (newValue.toString().equals("true")) {
Toast.makeText(getApplicationContext(), "Service Started", Toast.LENGTH_LONG).show();
registerReceiver(batteryInfoReceiver, new IntentFilter(
Intent.ACTION_BATTERY_CHANGED));
} else if (newValue.toString().equals("false")) {
stopService(new Intent(getBaseContext(),
BatteryService.class));
Toast.makeText(getApplicationContext(),
"Unchecked", Toast.LENGTH_SHORT).show();
}
return true;
}
});
return START_STICKY;
}
どうすればこの問題を解決できますか?ヘルプPlease
誰でも助けることができますか?私はまだ助けを待っている – 2619