1

実行時にレイアウトにビューを追加しています。あなたの見解はそのようなものです:

<LinearLayout android:id="@+id/ll1">
<LinearLayout android:id="@+id/ll2" >
    <ImageView android:id="@+id/iv1" />
    <TextView android:id="@+id/tv1"/>
    <ImageView android:id="@+id/iv2"/>
</LinearLayout>

(私はそれを簡単にするためにたくさん取り出しました)

コードでは、これらをいくつでもレイアウトに追加しています。次に、このビューを追加するたびにImageViewsとTextViewsにアクセスするにはどうすればよいですか?

現在、私はこの複雑な方法で各子供を通り抜け、

if (View instanceof ImageView)

(親ビューがll2である場合)呼び出すparentView.getChildAt(0)と、これは常にiv1を返しますか?そして「1」でこれは常にtv1を返しますか?

次に、後で呼び出すために、これらのオブジェクトをそれ自体のベクトルに格納しています。

これを行う簡単な方法はありますか?最初にすべてを追加したときのように、画像ビューのソースを設定し、この方法で見つけなくてもテキストビューのテキストを設定できる方法はありますか?

4

1 に答える 1

2

ビューを膨らませたら、その子を見つけて、子ごとに特定のタグを設定します(使用setTag())。認識する必要がある場合は、を使用しgetTag()ます。getTagとsetTagの使用法については、setTag(の主な目的は何ですか)を参照してください。 )ビューのgetTag()メソッド?コントロールを変更するためのAndroid:setTag()およびgetTag()の使用法。

于 2012-10-18T02:46:08.203 に答える