Intereting Posts
Kotlin Один аргумент типа, ожидаемый для класса для абстрактного общего владельца представления Kotlin – переопределить / реализовать функцию доступа к массиву Не удается профилировать приложение Android в Android Studio Kotlin – исключение документа, созданное методом интерфейса Spring Data Neo4j – ORDER BY {order} не работает Автоматическое обновление версии библиотеки для проектов Gradle в настоящее время не поддерживается. Обновите файл build.gradle вручную. Как я могу разбить String на массив в Kotlin? Что означает функция приостановки в Kotlin Coroutine Как отображать данные в RecyclerView с помощью API Retrofit2? Kotlin – общий параметр в List – сочетание Java и Kotlin null в listOf (), а не null в listOf (значение) в Kotlin в одном лайнере? Как объединить 2 отдельных потока, буферизовать заполненные данные из них и subsrcibe к нему после некоторого времени У Котлина есть сборщик мусора? Если да, то на каком алгоритме он основан? Отсутствует причина сбоя в консоли разработчика Как передать токен JWT из одной активности в другую?

Как найти вид в headerLayout android kotlin

У меня есть NavagationView в main_activity, а в NavagationView есть main_activity headerLayout

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" tools:openDrawer="start"> <include layout="@layout/app_bar_main" android:layout_width="match_parent" android:layout_height="match_parent" /> <android.support.design.widget.NavigationView android:id="@+id/nav_view" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="start" android:fitsSystemWindows="true" app:headerLayout="@layout/nav_header_main" app:menu="@menu/activity_main_drawer" /> 

nav_header_main

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="@dimen/nav_header_height" android:gravity="bottom" android:orientation="horizontal" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:theme="@style/ThemeOverlay.AppCompat.Dark"> <ImageView android:id="@+id/avatar" android:layout_width="96dp" android:layout_height="96dp" android:layout_margin="@dimen/nav_header_vertical_spacing" app:srcCompat="@drawable/logo" /> 

`Вопрос заключается в том, как найти изображение аватара в основной деятельности. Я попытался выполнить аватар.setOnClickListener {}, но выбрал исключение NulPointer, а также импортировал этот импорт kotlinx.android.synthetic.main.nav_header_main.

Solutions Collecting From Web of "Как найти вид в headerLayout android kotlin"

import kotlinx.android.synthetic.main.nav_header_main.*

Вам не хватает * . И убедитесь, что вы вызываете setContentView перед рукой.

 setContentView(R.layout.activity_main) 
 val navigationView: NavigationView = findViewById(R.id.nav_view) //if your kotlin version less 1.1.4-2 then as as NavigationView val header = navigation_view.getHeaderView(0) val avatar: ImageView = header.findViewById(R.id.avatar) avatar.setOnClickListener { //do something }