Android にはまだ新しすぎます。
私はいくつかのウィジェットを備えたクラスAを持っています
また、=>クラスBはTextViewを拡張します
クラス A はクラス B のインスタンスを使用します。
テキストがクラス B に入力されたとき、A からのウィジェットの配列を反復処理し、異なるタイプ (スピナー、テキストビューなど) であるが、共通のプロパティ setVisibility を持ち、それを変更したい
そのため、クラス A では、フィールド メンバーのクラス B を作成した後、2 つのウィジェットを含むオブジェクト配列を (クラス B に) 渡します。
だから、単純に、キャストを使用して for ループのいくつかのバリエーションを試しました (これまでのところエラーを出していないだけですが、問題があります:
for (Object o : hidObj)
{
Class c=o.getClass(); //.setVisibility=1;
if (c.getSuperclass()==android.view.View.class){};
}
問題: この場合、hidObj 配列には TextView と 1 つの Spinner が含まれます (これを他のアクティビティでも機能させたい)
しかしTextView:
java.lang.Object
↳ android.view.View
↳ android.widget.TextView
スピナー中:
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.widget.AdapterView<T extends android.widget.Adapter>
↳ android.widget.AbsSpinner
↳ android.widget.Spinner
すぐにそれはうまくいきません。
Android/Java の専門家からの提案はありますか?
よろしくお願いします
デビッド