Android создает меню нижней панели

Я хочу, чтобы статическая нижняя панель меню существовала во всех приложениях на каждой странице, видимой внизу все время. Я разработал строку меню, но я не понимаю, нужно ли мне интегрировать код меню с каждым XML-файлом макета, чтобы сделать меню видимым на каждой странице, и написать код в каждом классе активности для выполнения функций при щелчках меню. Или, если есть какой-либо другой способ, я могу создать общую нижнюю панель, которая лежит на каждой странице, с написанием кода меню в одном классе активности.


person rags    schedule 05.04.2011    source источник


Ответы (3)


На мой взгляд, лучший способ - создать xml-файл нижней панели и включить его в xml-файл каждого действия.

<include android:layout_width="fill_parent" layout="@layout/bottom_bar" />

где имя файла xml вашей нижней панели - bottom_bar.xml

Эта статья также может помочь вам

http://android-developers.blogspot.com/2009/02/android-layout-tricks-2-reusing-layouts.html

person Muhammad Shahab    schedule 05.04.2011

Также есть маршрут include:

person dave.c    schedule 05.04.2011
comment
Используя include, не нужно ли нам писать код в каждом действии для выполнения функций по щелчку меню? - person rags; 05.04.2011
comment
Вы можете написать базовый класс Activity, который содержит весь ваш общий код меню, а затем каждый уникальный класс Activity расширяет базовый класс. - person dave.c; 05.04.2011

Вероятно, вы ищете одно действие с TabBar с вкладками вверху и кнопками внизу: Android: вкладки внизу

Затем вы можете использовать разные представления, соответствующие вкладкам, вместо отдельных действий.

person Peter Knego    schedule 05.04.2011
comment
Спасибо, Питер, на самом деле я хочу выполнять некоторые операции с базой данных на каждой странице, поэтому я использовал действия с каждым макетом xml. - person rags; 05.04.2011
comment
Зачем вам нужны Activity для выполнения операций с базой данных? В любом случае вы не должны выполнять длительные задачи в потоке пользовательского интерфейса. - person Peter Knego; 05.04.2011