これを修正するさまざまな方法を試しましたが、修正できません。私チェックボックスのこのメソッド内で渡さオブジェクトのブール値を取得しようとしています:オブジェクトからブール値を取得する方法
public boolean onPreferenceChange(Preference preference, Object newValue)
{
final String key = preference.getKey();
referenceKey=key;
Boolean changedValue=!(((Boolean)newValue).booleanValue()); //ClassCastException occurs here
}
私が手:
とjava.lang.ClassCastException:java.lang.Stringではできませんjava.lang.Booleanの
まず、newValueがBoolean型であると想定しています。 instanceofを使用して、newValueのタイプをチェックすることができます。それがブール値で、オートナンバーボックスであれば、問題はありません。文字列の場合は、値「true」、「false」を比較(大文字と小文字を区別しない)してから、適切なブール表現を作成できます。 – horbags