質問

現在、 httpでGoogleのさまざまなAndroidの例を試しています。 ://developer.android.com/guide/tutorials/views/hello-spinner.html

ただし、コードがWebサイトで提供されているものとまったく同じであっても、この部分を動作させることはできないようです。

Spinner s =(Spinner)findViewById(R.id.spinner);

Eclipseは<!> quot; ViewからSpinnerにキャストできません<!> quot;

あなたの誰もがこれを解決する方法を知っていませんか?

ありがとう。

役に立ちましたか?

解決

インポートしたのはandroid.widget.Spinnerで、同じものに名前が付けられているものではありませんか?念のため、次のことを試してください:

android.widget.Spinner s = (android.widget.Spinner) findViewById(R.id.spinner);

問題が発生しない場合は、名前空間に問題がある可能性が高くなります。

他のヒント

それは奇妙に思えますが、android.widget.Spinnerをインポートしましたか? SpinnerはViewを継承するため、動作するはずです。

他の人が示唆するように、これは名前空間の問題かもしれません。ジェネリックを汚すときに一度これに遭遇しました-あなたのケースを使用するために、Foo<Spinner>の代わりにFoo<A>を取るようにクラスを定義したので、Spinnerは私の名前空間でローカル名として定義されました。 String参照が解決されたのは、ジェネリックの名前を<=>に変更したときだけです。

(私の場合、<=>ではなく<=>でしたが、パターンは保持されるはずです)

スピナー変数名はクラス名と同じであってはなりません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top