vladimir-shperling
b827987bb8
Merge remote-tracking branch 'upstream/main'
All checks were successful
Merge core/template-android-project to this repo / merge-if-needed (push) Successful in 18s
Практическая работа. Курс Kotlin. Практическая 3.10
Данная практическая работа направлена на реализацию бокового меню приложения
Дополнение XML разметки
Первым делом необходимо дополнить разметку XML для корректного использования бокового меню. Необходимые места для заполнения представлены ниже.
Укажите параметры app:headerLayout
и app:menu
внутри NavigationView! Нужные XML уже реализованы внутри проекта
activity_main.xml
...
<com.google.android.material.navigation.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
<!-- TODO: Реализовать здесь -->
/>
Реализовать 3 item'а внутри group
для реализации имен и значков меню. Идентификаторы, имена и наименования иконок должны соответствовать таблице ниже
id | title | icon |
---|---|---|
home | Home | baseline_home_24 |
about | About | baseline_back_hand_24 |
help | Help | baseline_help_24 |
menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<!-- TODO: Создайте 3 item'а -->
</group>
</menu>
Дополнение Kotlin кода
Далее необходимо дополнить код для замены текста в TextView info
на название элемента меню, а также вывод Toast по шаблону Page: ИМЯ_ЭЛЕМЕНТА_МЕНЮ
MainActivity.kt
...
navigationView?.setNavigationItemSelectedListener(
NavigationView.OnNavigationItemSelectedListener { item ->
// TODO: Реализовать здесь
drawerLayout?.closeDrawer(navigationView!!)
false
}
)
Description
Languages
Kotlin
100%