-5

参考までに、Android のビューを共有することはできません。これは SDK の設計上の決定事項であり、議論の余地がありますが、その通りです。各ビューは、最大で 1 つの親ビューを持つことができます。ただし、レイアウトをビュー テンプレートとして機能させるために、共通の view_layout.xml ファイルを再利用できます (つまり、数回インフレートします)。ボタンなどのビュー内の要素のviewidとidへの影響は何ですか。

  • これらは view_layout.xml 内で定義されるべきではありませんか? (たとえば、異なるビュー インスタンスにあるにもかかわらず、同じ ID を持つ 2 つのボタンがないようにします)。
  • ビュー自体のインスタンス ID はどうですか?
  • 共通の view_layout.xml ファイルを指定して、これらのビューを一意に定義するにはどうすればよいですか?
  • もちろん、インフレートされたビューへの個別の参照を持つことはできますが、ビュー自体の id とその中のウィジェットについてはどうでしょうか?
4

1 に答える 1

1

ここで何に対処しようとしているのか正確にはわかりませんが、レイアウトを適切に設計した場合、レイアウト内のビューが衝突することはありません。ビュー ID は、直接の親 ViewGroup にのみ適用されます。ViewGroup Aがあり、それが最上位の ViewGroup であるとします。次に、ViewGroup Bの 2 つのインスタンスをインフレートしてからAに追加します。相互に参照がないため、それぞれの ID が衝突することはありません。それらのスコープは完全に異なります。

于 2012-09-24T22:11:39.953 に答える