7

多くの EditTexts を含むフォームがあり、特定のボタンを押すと、これらすべてのコントロールを取得して HashMap に配置する必要があるため、キーは名前になります (key1 int 次のコード)

<EditText android:id="@+id/key1" 
        style="@style/keys" /> 

値、ユーザーが入力したテキスト。

私の質問は、ハッシュマップのキーの EditText の名前を取得するにはどうすればよいですか? getId() は数値を返します。

ありがとう

4

3 に答える 3

3

Android は、R.javaプロジェクトをビルドするたびにそのビューのハンドルを生成します。たとえば、ビルドすると、 を呼び出して EditText にアクセスできますR.id.key1。コード内でいつでも ID に直接アクセスできるため、ID をどこにでも保存する必要はありません。この ID を使用すると、 dave.c のfindViewById()メンションとして呼び出して、必要なビューを XML から取得できます。

于 2011-01-31T14:20:25.280 に答える
2

android:tag と getTag() を使用して最終的に解決しました

于 2011-01-31T18:58:34.530 に答える
0

実際には、getId() はコンポーネント ID の整数値であり、R 生成クラスで説明されているものと同じです。

あなたが書いたように、あなたは実際の名前が必要ですか?参照だけが必要な場合は、int 値で十分です。

于 2011-01-31T14:24:59.903 に答える