1
我正在處理自定義ROM,並在嘗試編譯時收到此錯誤。我試圖添加一個自定義電池選擇器。StatusBar不抽象,不重寫抽象方法onPreferenceChange
com.android.settings.pcf.StatusBar is not abstract and does not override abstract method onPreferenceChange(android.preference.Preference,java.lang.Object) in android.preference.Preference.OnPreferenceChangeListener
這是該com.android.settings.pcf.StatusBar文件:
package com.android.settings.pcf;
import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.PreferenceScreen;
import android.provider.Settings;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.R;
public class StatusBar extends SettingsPreferenceFragment implements OnPreferenceChangeListener {
private static final String PREF_BATT_ICON = "battery_icon_list";
ListPreference mBatteryIcon;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.prefs_statusbar);
mBatteryIcon = (ListPreference) findPreference(PREF_BATT_ICON);
mBatteryIcon.setOnPreferenceChangeListener(this);
mBatteryIcon.setValue((Settings.System.getInt(getActivity()
.getContentResolver(), Settings.System.STATUSBAR_BATTERY_ICON,
0))
+ "");
}
public boolean OnPreferenceChange(Preference preference, Object newValue) {
if (preference == mBatteryIcon) {
int val = Integer.parseInt((String) newValue);
return Settings.System.putInt(getActivity().getContentResolver(),
Settings.System.STATUSBAR_BATTERY_ICON, val);
}
return false;
}
}
誰能幫助?
哇哦。我不相信我沒有注意到大寫字母o。我將它改爲小寫字母並添加了@Override,現在它可以工作。謝謝一堆。 –