views
から返された指定された ID を持つすべてを取得する必要がありますactivity
。ツリーをたどる必要がありますか、または指定された idView
のすべての出現を返すビルトインはありますか?views
1 に答える
を取得する場合は、属性View
を使用して一意の ID を割り当てる必要があります。android:id
そうでない場合は、ビュー ツリーの解析など、より退屈な別の方法を使用する必要があります。
レイアウトからの説明| Android 開発者は次のように述べています。
ID
ツリー内のビューを一意に識別するために、任意のビュー オブジェクトに整数 ID が関連付けられている場合があります。アプリケーションがコンパイルされると、この ID は整数として参照されますが、ID は通常、レイアウト XML ファイルで id 属性の文字列として割り当てられます。これは、すべての View オブジェクト (View クラスによって定義される) に共通の XML 属性であり、非常に頻繁に使用されます。XML タグ内の ID の構文は次のとおりです。
android:id="@+id/my_button"
あなたに関連するのは、同じページからのこの引用でもあるはずです。
ID はツリー全体で一意である必要はありませんが、検索しているツリーの部分内で一意である必要があります (ツリー全体であることが多いため、可能であれば完全に一意であることが最善です)。
したがって、ビューを見つけるためfindViewByID()
に、ビュー ツリーを見なければならないものを少なくする必要があります。その方法の例については、Grokking Android の Finding all View-IDs of an Android UI を参照することをお勧めします。