私はすでに同様の質問hereを見てきました。私はすでに import android.content.res.Configuration;
という行を追加しています。それは助けていない。onConfigurationChanged(Configuration)をオーバーライドできないのはなぜですか?
私はAdapterView<Adapter>
を拡張するクラスを作成しています。EclipseはonConfigurationChanged(Configuration)
を上書きさせません。 AdapterView page in the Android Docsに見られるように、この方法は確かに存在する。では、なぜ私はそれを無効にできませんか?ここで
import android.content.Context;
import android.content.res.Configuration;
import android.view.View;
import android.widget.Adapter;
import android.widget.AdapterView;
public class Foo extends AdapterView<Adapter> {
public Foo(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Override
public Adapter getAdapter() {
// TODO Auto-generated method stub
return null;
}
@Override
public View getSelectedView() {
// TODO Auto-generated method stub
return null;
}
@Override
public void setAdapter(Adapter adapter) {
// TODO Auto-generated method stub
}
@Override
public void setSelection(int position) {
// TODO Auto-generated method stub
}
/*
* Error is thrown here... The method onConfigurationChanged(Configuration) of
* type Foo must override or implement a supertype method
*/
@Override
protected void onConfigurationChanged(Configuration newConfig) {
/*
* Error is thrown here... The method onConfigurationChanged(Configuration) is
* undefined for the type AdapterView<Adapter>
*/
super.onConfigurationChanged(newConfig);
}
}
実装を表示してください – MByD
それは基本的なものです。私はAdapterViewを拡張し、継承した抽象メソッドを実装する全く新しいクラスを持っています。それは今のところすべてです。問題は、onConfigurationChangedをオーバーライドしようとすると、メソッドがAdapterView の型が定義されていないというエラーが表示されることです。 –
dfetter88
パラメータのコンフィグレーションは、android.content.res.Configurationとして間違いなくインポートされていますか?署名を変更して保護するonConfigurationChanged(android.content.res.Configuration config) – planetjones