2013-09-22 8 views
5

Я искал около дня, чтобы получить доступ к моему приложению Android в нижней части экрана.Android - вкладки внизу экрана

На сайте разработчика Android в разделе стилей и тем, что они, кажется, есть точный пример того, что я пытаюсь сделать, однако они не считают необходимым, чтобы обеспечить достойный пример этого:

enter image description here

Все советы/решения, которые я нахожу в Интернете, терпят неудачу. Я всегда кажется, чтобы получить следующий стыковой некрасиво расположение, где вкладки очень неуместны в верхней части экрана, рядом с именем приложения :-(

enter image description here

Кто-нибудь есть ключ, как это сделать?

Большое спасибо заранее за любые советы

+0

Это пока еще нет вкладки, но раскол ActionBar. Подробнее об этом можно узнать в Руководстве разработчика Android (http://developer.android.com/guide/topics/ui/actionbar.html). – Ridcully

+0

@Wesley, это функция просмотра с разделительной панелью. Вы можете найти хороший пример. Вы должны определить атрибут в «Android Manifest». –

ответ

11

Я думаю, что эти примеры будут полезны вам: Android Bottom tab bar example И THIS

+5

Хотя это теоретически может ответить на вопрос, [было бы предпочтительнее] (http://meta.stackoverflow.com/q/8259) включить основные части ответа здесь и предоставить ссылку для справки. – Keelan

1

Я думаю, что вы не искать достаточно для вашей проблемы, потому что вы ищете, используя ключевое слово неправильно.

Что вы показываете в 1-изображении в нижней части приложения Gmail есть 4 меню и пятое меню переполнения и верхнее в верхней панели действий

Вы можете разместить меню в нижней части, используя простое свойство в манифесте; одна линия по основной деятельности, которая показывает панель действий

android:uiOptions="splitActionBarWhenNarrow"

Как это:

<activity 
    android:name="com.example.HomeActivity" 
    android:screenOrientation="portrait" 
     android:uiOptions="splitActionBarWhenNarrow" 
    android:theme="@style/Theme.Sherlock.Light" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 

     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 
0

Его очень просто ....

Для простой панели вкладок мы используем

<?xml version="1.0" encoding="utf-8"?> 
<TabHost 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/tabhost" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:padding="5dp"> 
     <TabWidget 
      android:id="@android:id/tabs" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" /> 
     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:padding="5dp" /> 
    </LinearLayout> 
</TabHost> 

Но в нижней панели вкладок мы используем

**

<?xml version="1.0" encoding="utf-8"?> 
<TabHost 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/tabhost" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <RelativeLayout 
     android:layout_height="fill_parent" 
     android:layout_width="fill_parent"> 
     <TabWidget 
      android:id="@android:id/tabs" 
      android:layout_alignParentBottom="true" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" /> 
     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:padding="5dp" /> 
    </RelativeLayout> 
</TabHost>** 

Главное

android:layout_alignParentBottom=”true”; 
1

Я использую этот макет для поиска вкладок в бо ttom экрана:

?xml version="1.0" encoding="utf-8"?> 
<TabHost 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/tabhost" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="0dp" 
      android:layout_height="0dp" 
      android:layout_weight="0"/> 
     <FrameLayout 
      android:id="@+android:id/realtabcontent" 
      android:background="@drawable/bg_main_app_gradient" 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_weight="1"/> 
     <TabWidget 
      android:id="@android:id/tabs" 
      android:background="#EAE7E1" 
      android:orientation="horizontal" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight="0"/> 
    </LinearLayout> 
</TabHost> 

нелогич- кода: https://stackoverflow.com/a/23150258/2765497

0

Я наткнулся на ваш вопрос, стремящегося сделать то же самое, однако в соответствии с руководящими принципами развития андроиды, вы никогда не должны иметь панель вкладок в нижней части , так как это функция IOS ...

Android Development Standards

+0

Самое смешное, что их собственное приложение Gmail использовало меню внизу – Han

0

Вы, кажется, имеют нижнюю планку немного запутанный. Это не панель вкладок. Нижняя панель предназначена для действий, а не для навигации по экранам. Например, на скриншоте приложения Gmail, которое вы указали выше, нижняя панель позволяет пользователю: создавать электронную почту, поиск, тег, обновление и многое другое. Refer:

Технически эти кнопки перемещают пользователя на другие экраны, но панель вкладок обычно используется для «переключения» экранов. Например, просмотр контента по категориям.

Хм, но в последней версии приложения Gmail у них есть эти кнопки действий сверху. Sigh ...

+0

Хотя эта ссылка может ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. –

+0

Спасибо за подсказку. Ссылка предназначена только для справки. – Vasim

1

Google не рекомендует иметь вкладки внизу.

Смотрите следующий официальный путеводитель дизайн шаблона от Android,
и найдите раздел «Не используйте нижнюю панель вкладок»

http://developer.android.com/design/patterns/pure-android.html

+0

нет, хотя это рекомендуется Android/Google, это звучит очень смешно для дизайнеров макетов. Использование вкладок на самом деле не так уж плохо. – Raptor

+5

В последнем приложении Google+ есть вкладки внизу экрана, точно так же, как в документе говорится, что он не должен использоваться. – moyheen

+3

http://www.theverge.com/2016/3/15/11236152/material-design-update-bottom-navigation-bar –

1

Я хотел отправить обновление здесь. Bottom nav bars are now Android Canon. Основными транспортными средствами являются:

1) Используйте нижние навигационные панели только для 3-5 значков. Любые меньше, используйте tabs. В любом случае используйте прокручиваемые вкладки (страница вниз по той же ссылке).

2) Избегайте использования нижней навигационной панели и вкладок вместе и убедитесь, что обязанности обоих четко разделены, если вы это сделаете.

3) Донные нав стержни должны быть использованы для навигации не действий (используйте ActionBar для тех, кто)

Смежные вопросы