Кнопка Home в Action Bar-е дозволяє повернутися на домашній / головний / попередній екран додатка або будь-який інший. Насправді, ви вільні обробляти клік так, як вам захочеться, і можете додати цільове активують таке, яке буде доречно в даному контексті. З цієї причини назва Home кілька вузько, проте вона має на увазі, що перехід на головний / батьківський / попередній екран - це все-таки зручніше і зрозуміліше для навігації.
Кнопка Home зазвичай розташована зліва в Action Bar-е і включає в себе кутову дужку = 9 (будемо використовувати Support Library).
Додамо рядкові ресурси res / values / strings.xml
LinearLayout для першого Активити - res / layout / activity_main.xml
Не забудьте додати для кнопки атрибут android: onClick. який буде відсилати обробку кліків на метод changeActivity ().
Код простий. У onCreate () стандартні речі. У методі changeActivity () ми створюємо новий Интент з другим Активити і переходимо на ActivityWithHome за допомогою методу startActivity (). приймають в якості параметра створений Intent.
Створимо layout для другого Активити - res / layout / activity_with_home.xml
Код другого Активити - ActivityWithHome.java
Як бачите, ми додаємо кнопку Home в методі onCreate () програмно. Спочатку отримуємо доступ до ActionBar:
Для нових API можна використовувати метод getActionBar (). Потім включаємо кнопку - setHomeButtonEnabled (). передаючи в якості параметра true. Метод setDisplayHomeAsUpEnabled () включає / вимикає відображення навігації і додає кутову дужку.
У методі onOptionsItemSelected () ми обробляємо натискання на кнопку Home - прийде значення android.R.id.home. У цьому блоці ми запускаємо знову наше головне Активити.
Не забудьте додати в файл маніфесту інформацію про новий активують:
А в файлі маніфесту для другого Активити прописати атрибут з батьківським Активити:
Атрибут тут містить опис для версій API
Рубрика: Різне