0

viewsから返された指定された ID を持つすべてを取得する必要がありますactivity。ツリーをたどる必要がありますか、または指定された idViewのすべての出現を返すビルトインはありますか?views

4

1 に答える 1

0

を取得する場合は、属性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 を参照することをお勧めします。

于 2013-09-19T08:51:19.033 に答える