2013-09-22 16 views
5

Szukałem około jednego dnia, aby uzyskać dostęp do mojej aplikacji na Androida w dolnej części ekranu.Android - Tabulatory u dołu ekranu

Na Android stronie Developer w sekcji stylami i konwencjami, wydają się mieć dokładny przykład tego, co próbuję zrobić, jednak nie uznała za konieczne, aby zapewnić godne tego przykład:

enter image description here

Wszystkie wskazówki/rozwiązania znalezione w Internecie zawodzą. I zawsze wydają się następujące butt-brzydki układ, gdzie karty są bardzo źle umiejscowione w górnej części ekranu, obok nazwy aplikacji :-(

enter image description here

Czy ktoś ma pojęcia jak to osiągnąć?

Dziękuję z góry za wszelkie wskazówki

+0

które nie są zaczepy ale rozłam ActionBar. Możesz przeczytać więcej na ten temat w Przewodniku dla programistów Androida (http://developer.android.com/guide/topics/ui/actionbar.html). – Ridcully

+0

@Wesley, Jest to funkcja widoku 'Split Action Bar'. Możesz znaleźć dobry przykład. Musisz zdefiniować atrybut w "Manifestu Androida". –

Odpowiedz

11

Myślę, że te przykłady będą przydatne dla Ciebie: Android Bottom tab bar example I THIS

+5

Chociaż może to teoretycznie odpowiedzieć na pytanie, [byłoby lepiej] (http://meta.stackoverflow.com/q/8259), aby uwzględnić istotne części odpowiedzi tutaj, i podać link dla odniesienia. – Keelan

1

Chyba nie szukać wystarczy dla swojego problemu, bo szukasz używając złego słowa kluczowego.

Co pokazujesz w 1 obrazek na dole aplikacji Gmail są 4 menu i 5. menu przepełnienia i górny w górnym pasku akcji

można umieścić menu na dole za pomocą prostego nieruchomości w manifeście; jeden wiersz na działalności podstawowej, która pokazując pasku akcji

android:uiOptions="splitActionBarWhenNarrow"

tak:

<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

Jego bardzo proste ....

Do prostego paska kart używamy

<?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> 

Ale w dolnym pasku Tab używamy

**

<?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>** 

Najważniejsze jest

android:layout_alignParentBottom=”true”; 
1

używam ten układ do lokalizowania zakładek w bo ttom ekranu:

?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> 

examle kodu: https://stackoverflow.com/a/23150258/2765497

0

natknąłem swoje pytanie stara się zrobić to samo, jednak według wytycznych rozwoju androidy, nie powinien nigdy mieć pasek kart na dole , ponieważ jest to funkcja iOS ...

Android Development Standards

+0

Zabawne jest to, że ich własna aplikacja Gmail miała menu na dole. – Han

0

wydaje się, że dolny pasek nieco zmieszany. To nie jest pasek kart. Dolny pasek służy do wykonywania czynności, a nie do poruszania się po ekranie. Na przykład na zrzucie ekranu opublikowanej powyżej aplikacji Gmail dolny pasek umożliwia użytkownikowi: Tworzenie wiadomości e-mail, wyszukiwanie, tagowanie, odświeżanie i więcej. Odwołaj się: Technicznie te przyciski umożliwiają nawigację użytkownika do innych ekranów, ale pasek kart jest zwykle używany do przełączania ekranów. Na przykład przeglądanie treści według kategorii.

Hmm, ale w najnowszej wersji aplikacji Gmail mają te przyciski akcji na wierzchu. Wzdycha ...

+0

Podczas gdy ten link może odpowiedzieć na pytanie, lepiej umieścić tutaj istotne części odpowiedzi i podać odnośnik. Odpowiedzi dotyczące linków mogą stać się nieprawidłowe, jeśli strona z linkami się zmieni. –

+0

Dzięki za cynk. Link służy wyłącznie do celów informacyjnych. – Vasim

1

Google nie zaleca posiadania kart na dole.

Zobacz następujący oficjalny przewodnik wzorzec projektowy od Androida,
i poszukaj sekcji „Nie używaj dolne pręty zakładce”

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

+0

Nie, chociaż jest to zalecane przez system Android/Google, brzmi to niedorzecznie projektantom układów. Używanie kart wcale nie jest złe. – Raptor

+5

Najnowsza aplikacja Google+ ma karty u dołu ekranu, dokładnie w taki sposób, w jaki doc mówi, że nie powinno być używane. – moyheen

+3

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

1

chciałem pisać aktualizacji tutaj. Bottom nav bars are now Android Canon. Główne dania na wynos to:

1) Stosuj dolne paski nawigacyjne tylko dla 3-5 ikon. Mniejsza, użyj tabs. Więcej, użyj przewijanych kart (strona na tym samym linku).

2) Unikaj używania dolnego paska nawigacji i zakładek, i upewnij się, że obowiązki obu są wyraźnie oddzielone, jeśli to zrobisz.

3) Dół barów nav powinny być wykorzystywane do nawigacjinie działania (użyj ActionBar dla tych)

Powiązane problemy