In meinem Layout habe ich so etwas definiert.
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Dnt want this text" />
Angenommen, eine Funktion in der Aktivität gibt mir diese ID (ID von radioButton) zurück. Jetzt möchte ich diesen Text radio1 von dieser ID erhalten. Kurz gesagt, ich möchte den in radio1 geschriebenen Text abrufenandroid:id="@+id/radio1"
Kann mir jemand sagen, wie es möglich ist?
Antworten:
Versuchen Sie in Ihrer Aktivität Folgendes:
um einen String zu bekommen wie
radio1
:um einen String zu bekommen wie
com.sample.app:id/radio1
:In Kotlin Now:
quelle
getResourceEntryName(int resid)
und istgetResourceName(int resid)
?minifyEnabled true
) verwenden, insbesondere fürgetResources().getIdentifier(...
Sie haben eine ID (Typ 'long') von dieser ID, auf die Sie zugreifen möchten, die Optionsfeld- ID (Name) , die radio1 ist . Du benutzt das
Bei Verwendung von oben können Sie den Namen des Optionsfelds erhalten, dh radio1. Hier haben Sie die Parameter-ID (langer Typ) . Versuchen Sie dies, es wird Ihnen 100% helfen.
quelle
Kotlin:
quelle
Wenn ich recht habe, wollten Sie das Wort "radio1" (von der ID selbst?) Abrufen. Wenn dies der Fall ist, müssen Sie zuerst die ID abrufen.
dann erhalten Sie das Ergebnis davon
hoffte ich half
quelle
Sie meinen, Sie möchten den Zeichenfolgentext der ID übernehmen?
Da Sie es definiert haben, sollten Sie wissen, was dies ist.
Wenn Sie ein Layout haben und herausfinden möchten, ob eine Ansicht eine bestimmte ID hat, können Sie das gesamte Layout durchlaufen und mit getId () überprüfen, ob die ID jeder Ansicht die gesuchte ID ist.
Hoffe das hilft (wenn ich verstanden habe deine Frage richtig zu stellen .. :))
quelle