Ich füge TextViews programmatisch in einer for-Schleife hinzu und füge sie zu einer ArrayList.
Wie verwende ich TextView.setId(int id)
? Welche Integer-ID muss ich mir ausdenken, damit sie nicht mit anderen IDs kollidiert?
Ich füge TextViews programmatisch in einer for-Schleife hinzu und füge sie zu einer ArrayList.
Wie verwende ich TextView.setId(int id)
? Welche Integer-ID muss ich mir ausdenken, damit sie nicht mit anderen IDs kollidiert?
Ab API-Stufe 17 und höher können Sie aufrufen: View.generateViewId()
Dann verwenden Sie View.setId(int) .
Wenn Ihre Anwendung auf eine niedrigere API-Stufe als 17 ausgerichtet ist, verwenden Sie ViewCompat.generateViewId()
Sie können die IDs, die Sie später verwenden werden, in R.id
Klasse unter Verwendung einer XML-Ressourcendatei, und lassen Sie Android SDK die tatsächlichen eindeutigen Werte während der Kompilierungszeit festlegen.
res/values/ids.xml
<item name="my_edit_text_1" type="id"/>
<item name="my_button_1" type="id"/>
<item name="my_time_picker_1" type="id"/>
Um sie im Code zu verwenden:
myEditTextView.setId(R.id.my_edit_text_1);
Nach Angaben von View
Dokumentation
Der Bezeichner muss in der Hierarchie dieser Ansicht nicht eindeutig sein. Der Bezeichner sollte eine positive Zahl sein.
Sie können also jede beliebige positive ganze Zahl verwenden, aber in diesem Fall kann es einige Ansichten mit gleichwertigen IDs geben. Wenn Sie nach einer Ansicht in der Hierarchie suchen wollen, rufen Sie setTag
mit einigen Schlüsselobjekten kann praktisch sein.
Seit API 17 ist die View
Klasse hat eine statische Methode generateViewId()
das wird
einen Wert erzeugen, der für die Verwendung in setId(int) geeignet ist
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.