Ich weiß, wie man die Root-Ansicht mit View.getRootView() . Ich bin auch in der Lage, die Ansicht von einer Schaltfläche zu erhalten onClick
Ereignis, bei dem das Argument ein Siehe . Aber wie kann ich die ver in einem Tätigkeit ?
Antworten
Zu viele Anzeigen?Eine weitere Kotlin Extension Lösung
Wenn die Ansicht Ihrer Aktivität in xml deklariert ist (z.B. activity_root.xml
), öffnen Sie die xml und weisen Sie der Root-Ansicht eine id zu:
android:id="@+id/root_activity"
Importieren Sie nun in Ihrer Klasse die Ansicht mit:
import kotlinx.android.synthetic.main.activity_root.root_activity
Sie können nun Folgendes verwenden root_activity
als die Aussicht.
Wenn Sie sich in einer Aktivität befinden und davon ausgehen, dass es nur eine Wurzelansicht gibt, können Sie diese wie folgt erhalten.
ViewGroup viewGroup = (ViewGroup) ((ViewGroup) this
.findViewById(android.R.id.content)).getChildAt(0);
können Sie sie dann auf Ihre echte Klasse übertragen
oder Sie könnten mit
getWindow().getDecorView();
Beachten Sie, dass dies die Ansicht der Aktionsleiste einschließt, Ihre Ansicht befindet sich unterhalb der Ansicht der Aktionsleiste.
- See previous answers
- Weitere Antworten anzeigen