s1ngle0f
527e348293
Some checks failed
Merge core/template-android-project to this repo / merge-if-needed (push) Failing after 15s
2.4 KiB
2.4 KiB
Практическая работа. Курс 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
}
)