web-dev-qa-db-ja.com

Android-画面下部のタブ

Androidアプリケーションの画面下部にタブが表示されるようにする方法を探しています。

Android開発者のWebサイトの[スタイルとテーマ]セクションに、私がやろうとしていることの正確な例があるようですが、これの適切な例を提供する必要はありませんでした:

enter image description here

私がウェブで見つけたすべてのヒント/解決策は失敗しています。画面の上部のアプリケーション名の横にタブが誤って配置されている、次のような見苦しいレイアウトを常に取得しているようです:-(

enter image description here

誰かがこれを達成する方法の手掛かりを持っていますか?

ヒントをありがとうございました!

6
Wesley

私はこれらの例があなたに役立つと思います: Android Bottom tab bar example AND [〜#〜] this [〜#〜]

11
NagarjunaReddy

このレイアウトを使用して、画面下部のタブを見つけます。

?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

2
Flinbor

ボトムナビゲーションの導入に伴い。

https://material.google.com/components/bottom-navigation.html

あなたはこれを行うことができます

https://stackoverflow.com/a/36033640/6207502

1
Sudhir

ここにアップデートを投稿したかった。 下部のナビゲーションバーがAndroid Canon。 になりました==これからの主なポイントは次のとおりです。

1)下部のナビゲーションバーは、3〜5個のアイコンにのみ使用します。それより少ない場合は、 tabs を使用します。それ以上の場合は、スクロール可能なタブを使用してください(同じリンクでページ送り)。

2)下部のナビゲーションバーとタブを一緒に使用しないでください。使用する場合は、両方の責任が明確に分かれていることを確認してください。

3)navigationではなく下部ナビゲーションバーを使用する必要がありますactions(useそれらのActionBar

1
sonictt1

間違ったキーワードを使用して検索しているため、問題を十分に検索できていないと思います。

Gmailアプリの下部の最初の画像に表示されているのは、4つのメニューと5番目のオーバーフローメニュー、上部のアクションバーの上部です。

マニフェストの単純なプロパティを使用して、メニューを下部に配置できます。アクションバーを示すメインアクティビティの1行

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>
1
Nil

Googleでは、タブを下部に配置することを推奨していません。

Androidの次の公式デザインパターンガイドを参照してください。
セクション「下のタブバーを使用しない」を探します

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

1
revolutionary

とてもシンプルです...

シンプルなタブバーには、

<?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”;
0
Varinder Deol

私は同じことをしようとしているあなたの質問に出くわしましたが、androids開発ガイドラインによれば、これはiOSの機能であるため、下部にタブバーがあるべきではありません...

Android開発標準

0
Jeremie

ボトムバーが少し混乱しているようです。それはタブバーではありません。下部のバーはアクション用であり、画面のナビゲートではありません。たとえば、上記で投稿したGmailアプリのスクリーンショットでは、下部のバーを使用して、メールの作成、検索、タグ付け、更新などを行うことができます。参照: http://developer.Android.com/design/patterns/actionbar.html

技術的にこれらのボタンはユーザーを他の画面にナビゲートしますが、タブバーは通常、画面を「切り替える」ために使用されます。たとえば、カテゴリ別にコンテンツを表示します。

そうですね、Gmailアプリの最新バージョンでは、これらのアクションボタンが上にあります。はぁ...

0
Vasim