标签: bottomnavigationview

底部导航视图突出显示所选项目

我已将Bottom Navigation View添加到我的活动XMl中.我无法从菜单项中设置默认选中的项目.它始终将第一个菜单项设置为默认值.此外,当我点击其他菜单项时,所选菜单项不会突出显示.如果我以编程方式设置item.setChecked(true),则菜单选项会突出显示,但第一个菜单项也会突出显示.我在用

 compile 'com.android.support:design:25.0.1'
Run Code Online (Sandbox Code Playgroud)

这是底部的导航视图

<android.support.design.widget.BottomNavigationView
    android:id="@+id/bottom_navigation"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:itemBackground="@color/white"
    app:itemTextColor="@color/black"
    app:menu="@menu/navigation_menu">
</android.support.design.widget.BottomNavigationView>
Run Code Online (Sandbox Code Playgroud)

这是菜单

 <?xml version="1.0" encoding="utf-8"?>
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto">

<item
    android:id="@+id/action_wallet"
    android:enabled="true"
    android:icon="@drawable/ic_account_balance_wallet_black_24dp"
    android:title="wallet"
    app:showAsAction="ifRoom"
    />
<item
    android:id="@+id/action_card"
    android:enabled="true"
    android:title="allowance"
    android:icon="@drawable/ic_credit_card_black_24dp"
    app:showAsAction="ifRoom"
    />

<item
    android:id="@+id/action_transaction"
    android:enabled="true"
    android:icon="@drawable/ic_description_black_24dp"
    android:title="transaction"
    app:showAsAction="ifRoom" />

</menu>
Run Code Online (Sandbox Code Playgroud)

底部导航视图 有谁遇到过这种情况?关于如何处理这个问题的任何建议?

谢谢,Priya

android material-design bottomnavigationview

7
推荐指数
2
解决办法
1万
查看次数

有没有办法为Android的BottomNavigationView的选定状态设置不同的图标/颜色?

以下是我当前BottomNavigationView的XML.目前,所有三个图标drawable都是具有相同颜色的未填充图标.我希望能够在选择该状态时呈现图标的填充版本,并且可能更改颜色以使其显然是当前图标状态.以下图片是我的意思的一个例子.

选择状态的图标颜色更改示例

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/action_favorites"
        android:enabled="true"
        android:icon="@drawable/icon_flyer"
        android:title="Flyer"
        app:showAsAction="ifRoom" />
    <item
        android:id="@+id/action_schedules"
        android:enabled="true"
        android:icon="@drawable/icon_list"
        android:title="List"
        app:showAsAction="ifRoom" />
    <item
        android:id="@+id/action_music"
        android:enabled="true"
        android:icon="@drawable/icon_contact"
        android:title="Contact"
        app:showAsAction="ifRoom" />
</menu>
Run Code Online (Sandbox Code Playgroud)

android bottomnavigationview android-bottomnav

7
推荐指数
4
解决办法
5186
查看次数

底部导航栏android中超过3项

我是Android的新手,我正在尝试在底部导航栏中创建一个包含3个以上元素的应用程序.我能够显示它们,但它们最终聚集在一起,只有三个可以正确显示.这是我的代码:

<android.support.design.widget.BottomNavigationView
    android:id="@+id/bottomNavigation"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:elevation="15dp"
    android:layout_gravity="bottom"
    android:layout_alignParentBottom="true"
    app:menu="@menu/bottom_nav_items" />
Run Code Online (Sandbox Code Playgroud)

以下是视图的图像: 这是快照

我卡住了请帮忙..

android android-layout bottomnavigationview

7
推荐指数
2
解决办法
1万
查看次数

如何在Android中显示BottomNavigation CoordinatorLayout

在我的应用程序中,我想显示BottomNavigation底部,CoordinatorLayout为此我写下面的代码:

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
   >

    <android.support.design.widget.AppBarLayout
        android:id="@+id/main.appbar"
        android:layout_width="match_parent"
        android:layout_height="150dp"
        android:fitsSystemWindows="true"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/main.collapsing"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:fitsSystemWindows="true"
            app:contentScrim="?attr/colorPrimary"
            app:expandedTitleMarginEnd="64dp"
            app:expandedTitleMarginStart="48dp"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">


            <include
                android:id="@+id/mainToolbar"
                layout="@layout/toolbar_main" />

        </android.support.design.widget.CollapsingToolbarLayout>

    </android.support.design.widget.AppBarLayout>


    <com.aurelhubert.ahbottomnavigation.AHBottomNavigationViewPager
        android:id="@+id/mainViewPager"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_above="@+id/mainBottomNavigation"
        app:layout_behavior="@string/appbar_scrolling_view_behavior" />

    <com.aurelhubert.ahbottomnavigation.AHBottomNavigation
        android:id="@+id/mainBottomNavigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        app:layout_anchorGravity="bottom"
        app:selectedBackgroundVisible="true" />

</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

但是当运行应用程序显示我的BottomNavigation顶部CoordinatorLayout!

我怎样才能显示BottomNavigation底部CoordinatorLayout

android android-coordinatorlayout bottomnavigationview

7
推荐指数
1
解决办法
8589
查看次数

反应导航选项卡导航器中的交叉淡入淡出动画

我正在使用反应导航选项卡导航器并反应原生材料底部导航,它当前从屏幕滑动到屏幕.如材料设计指南所示,我如何让它从一个屏幕淡入淡出另一个屏幕.

Router.js

import React from 'react';
import { TabNavigator, StackNavigator, NavigationActions } from 'react-navigation';
import { NavigationComponent } from 'react-native-material-bottom-navigation';
import Icon from 'react-native-vector-icons/MaterialIcons';
import { MAIN_COLOR, BOTTOM_BAR_COLOR, BOTTOM_BAR_ICON_COLOR } from '../config';
import { Classes, Settings, Search, SplashScreen } from '../components/screens';
import Login from '../components/screens/Login';
import Main from '../Main';

export const Tabs = TabNavigator({
  Classes: {
    screen: Classes,
    navigationOptions: {
      tabBarLabel: 'Classes',
      tabBarIcon: () => <Icon size={24} name="list" color={BOTTOM_BAR_ICON_COLOR} />,
    },
  },
  Search: {
    screen: Search,
    navigationOptions: {
      tabBarLabel: 'Search', …
Run Code Online (Sandbox Code Playgroud)

javascript react-native react-native-android bottomnavigationview react-navigation

7
推荐指数
1
解决办法
3595
查看次数

BottomNavigationView后退按钮行为应该像Youtube App一样工作但崩溃

重现步骤:

  1. 启动一个新的Android项目,选择" BottomNavigationView": 在此输入图像描述
  2. 用以下方法替换MainActivity:

    class MainActivity : AppCompatActivity() {
    
    private var fragmentIds = ArrayList<Int>()
    
    val fragmentA: FragmentA = FragmentA()
    private val fragmentB = FragmentB()
    private val fragmentC = FragmentC()
    
    private fun getFragment(fragmentId: Int): Fragment {
        when (fragmentId) {
            R.id.navigation_home -> {
                return fragmentA
            }
            R.id.navigation_dashboard -> {
                return fragmentB
            }
            R.id.navigation_notifications -> {
                return fragmentC
            }
        }
        return fragmentA
    }
    
    private fun updateView(fragmentId: Int) {
        var exists = false
        fragmentIds
                .filter { it == fragmentId }
                .forEach { exists …
    Run Code Online (Sandbox Code Playgroud)

android bottomnavigationview

7
推荐指数
1
解决办法
2474
查看次数

带有底部导航视图的深色主题

我正在尝试为我的应用程序制作一个昼夜主题。我在使底部导航视图从白色背景自动切换到黑色背景时遇到了麻烦。

这是我的底部导航代码,

<android.support.design.widget.BottomNavigationView
        android:id="@+id/bottom_navigation"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        android:background="@android:color/white"
        app:itemIconTint="@drawable/bottomnavstate"
        app:itemTextColor="@drawable/bottomnavstate"
        app:menu="@menu/bottom_navigation_main" />
Run Code Online (Sandbox Code Playgroud)

建议使用白色背景以在印刷时产生涟漪效果。

我的主题如下:

<style name="AppTheme" parent="Theme.AppCompat.DayNight">
    <item name="android:colorPrimary">@color/primaryColor</item>
    <item name="android:colorPrimaryDark">@color/primaryDarkColor</item>

    <item name="android:colorAccent">@color/accentColor</item>

    <item name="colorControlHighlight">@color/accentColor</item>

    <item name="android:windowLightNavigationBar">true</item>
    <item name="android:navigationBarColor">@android:color/background_light</item>
</style>
Run Code Online (Sandbox Code Playgroud)

我尝试过的事情:
1.添加了一个从app主题扩展的新主题,如下

 <style name="BGTheme" parent="AppTheme">
        <item name="android:background">@android:color/white</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

将该主题添加到底部导航小部件,但我看到一个奇怪的涟漪效果,它延伸到导航栏之外,底部导航栏也失去了它的高度。

奇怪的波纹

任何解决方案?

android bottomnavigationview

7
推荐指数
0
解决办法
2086
查看次数

实施 Material Design 入门示例

我正在查看Material 的入门设计指南。我想知道我应该如何复制这种导航。它似乎包含了一个特殊的底部标签栏和 viewpager。没有 viewpager 的滑动功能,只有两个按钮倾斜到底部标签栏的两侧。

在此处输入图片说明

android tabbar android-viewpager bottomnavigationview android-bottomnav

7
推荐指数
0
解决办法
441
查看次数

如何知道三星S8,S8 +,S9等ect底部导航栏是否可见?

三星S8,S8 +,S9等的底部导航栏会导致UI和动画噩梦,以便在切换时从我的应用程序的顶部和底部移入和移出视图.对于这些设备,如果导航栏切换到一切都可以正常工作,但如果切换动画,则所有设置都会大约低于导航栏的高度.我的想法是调整动画,但是,我很难搞清楚手机有一个底部导航栏并且它被切换掉了.

我创建了一个帮助方法,它让我知道一个设备有一个切换的导航栏.对于具有导航栏并且已打开的所有设备,此函数将返回true.但我想要处理的情况是它被切换掉的时候.问题是,切换掉就像所有其他手机一样.怎么解决这个?有没有办法强制导航栏永久显示?

   public static boolean hasNavBar(@NonNull Activity activity, @NonNull View rootView) {
        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR1) {
            return true;
        }

        // retrieve the window manager for showing custom windows
        Display d = activity.getWindowManager().getDefaultDisplay();
        DisplayMetrics realDisplayMetrics = new DisplayMetrics();
        d.getRealMetrics(realDisplayMetrics);

        int viewHeight = rootView.getHeight();
        if (viewHeight == 0) {
            return true;
        }
        int realHeight = realDisplayMetrics.heightPixels;
        return realHeight != viewHeight;
    }
Run Code Online (Sandbox Code Playgroud)

android bottomnavigationview

7
推荐指数
0
解决办法
250
查看次数

将顶部栏添加到底部导航视图项

我想在每个底部导航视图项目的项目被选中时在它的顶部放置一个栏。如下图,但我没有找到方法。在此处输入图片说明

我不知道该怎么做

android kotlin bottomnavigationview

7
推荐指数
1
解决办法
1460
查看次数