标签: bottomnavigationview

底部导航视图菜单项标题大小

早上好,

我正在使用底部导航视图来执行我的底部菜单.

现在标题太大了,我找不到任何解决方案来解决它

在此输入图像描述

android bottomnavigationview

8
推荐指数
3
解决办法
1万
查看次数

如何在BottomNavigationView中显示没有色调的菜单项图标

我创建了一个BottomNavigationView包含三个项目。其中之一是用户选项卡

底部

对于访客选项卡,有一个图像,但 TintColor 正在应用,我们看不到它。

那么如何去除特定项目的色调?

我试过了

 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                            item.setIconTintList(null);

                        }
Run Code Online (Sandbox Code Playgroud)

但没有运气。它适用于 api 26 以上

我的活动

<com.google.android.material.bottomnavigation.BottomNavigationView
    android:id="@+id/bottomNavigationView"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    app:itemIconTint="@drawable/bottom_color_state"
    app:itemBackground="@color/colorAccent"
    app:itemTextColor="@drawable/bottom_color_state"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:menu="@menu/menu_bottom_navigation" />
Run Code Online (Sandbox Code Playgroud)

底部颜色状态.xml

    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:color="@color/white" android:state_enabled="true" />
        <item android:color="@color/colorPrimaryDark" android:state_enabled="false" />
        <item android:color="@color/white" android:state_selected="true" />
        <item android:color="@color/off_white" android:state_selected="false" />
        <item android:color="@color/white" android:state_checked="true" />
        <item android:color="@color/off_white" android:state_checked="false" />
        <item android:color="@color/off_white" />
    </selector>
Run Code Online (Sandbox Code Playgroud)

提前致谢

android menu menu-items bottomnavigationview

8
推荐指数
3
解决办法
5166
查看次数

当使用Android WebView显示键盘时,BottomNavigationView会上升

这个答案对WebViews不起作用,这也不适用.所以这个问题专门用于使用WebView时.下面的代码加载带有文本输入字段的网页.单击文本输入字段时,键盘出现.

public class MainActivity extends AppCompatActivity {

    @SuppressLint("SetJavaScriptEnabled")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

        final WebView webView = (WebView) findViewById(R.id.textFavorites);
        BottomNavigationView bottomNavigationView = (BottomNavigationView)
                findViewById(R.id.bottom_navigation);

        webView.loadUrl("https://www.journaldev.com");

        bottomNavigationView.setOnNavigationItemSelectedListener(
                new BottomNavigationView.OnNavigationItemSelectedListener() {
                    @Override
                    public boolean onNavigationItemSelected(@NonNull MenuItem item) {
                        switch (item.getItemId()) {
                            case R.id.action_favorites:
                                webView.loadUrl("https://www.journaldev.com");
                                break;
                        }
                        return false;
                    }
                });
    }
}
Run Code Online (Sandbox Code Playgroud)

activity_main.xml中:

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

    <WebView
        android:id="@+id/textFavorites"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginBottom="?attr/actionBarSize"/>

    <android.support.design.widget.BottomNavigationView
        android:id="@+id/bottom_navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        app:itemBackground="@color/colorPrimary"
        app:itemIconTint="@color/white"
        app:itemTextColor="@color/white"
        app:menu="@menu/bottom_navigation_main" …
Run Code Online (Sandbox Code Playgroud)

android webview bottomnavigationview

8
推荐指数
1
解决办法
356
查看次数

从bottomNavigationView导航到片段B时保存片段A的状态

我是 Android 新手,一段时间以来我一直在努力保存片段的状态。我的应用程序在底部导航视图中有 5 个选项(我使用的是 Android 的默认 Activity)。在片段 A(实际上称为“SearchFragment”)中,我有一个按钮,单击时它会在文本框中设置一些文本。我想在导航到另一个片段并返回到片段 A 时保存该片段的状态(其中包含文本)(并且上一个按钮单击时的文本仍然存在)。

例如,根据我编写的代码,它会在更改方向时保存片段的状态,但在导航到其他片段然后返回时不会这样做。

我怎样才能更改代码?或者是否有其他方法可以保存导航时片段的当前状态?我真的需要一些帮助......感谢您的关注!

我的 mainActivity 如下所示:

    public class MainActivity extends AppCompatActivity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);

            BottomNavigationView navView = findViewById(R.id.nav_view);
            // Passing each menu ID as a set of Ids because each
            // menu should be considered as top level destinations.

            AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(
                    R.id.navigation_search, R.id.navigation_explore, R.id.navigation_trips, R.id.navigation_groups,R.id.navigation_profile)
                    .build();

            NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
            NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);
            NavigationUI.setupWithNavController(navView, navController);
        }

    }
Run Code Online (Sandbox Code Playgroud)

片段类如下所示:


    public …
Run Code Online (Sandbox Code Playgroud)

android uinavigationbar android-fragments onsaveinstancestate bottomnavigationview

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

Flutter - 禁用底部导航栏动画(增长文本)

我想禁用选定项目的底部导航栏动画,以获得与未选定项目相同的文本/图标大小。

这是我的代码:

 class BottomNavigationBarHome extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return BottomNavigationBar(
        unselectedItemColor: Colors.black38,
        backgroundColor: Colors.white,
        items: [
          BottomNavigationBarItem(
              icon: Icon(BalanceIcon.scale_balance, size: 15.0),
              title: Text('Item 1', style: TextStyle(

              ),)
          ),
          BottomNavigationBarItem(
              icon: Icon(BalanceIcon.scale_balance),
              title: Text('Item 2')
          ),
          BottomNavigationBarItem(
              icon: Icon(BalanceIcon.scale_balance),
              title: Text('Item 3')
          ),
        ]
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试设置相同的字体大小,动画仍然在这里

flutter bottomnavigationview

8
推荐指数
1
解决办法
8052
查看次数

BottomNavigationBar 无需一次加载所有页面

我有一个带有 BottomNavigationBar 和 IndexedStack 的屏幕,它根据底部栏索引交换子视图。

一切都很好,除了所有四个页面都是同时创建的,加载的数据相当繁重,并使应用程序减慢了几秒钟。

是否有一个设置允许我仅在点击相应选项卡时加载每个页面?

tabs flutter bottomnavigationview

8
推荐指数
1
解决办法
1825
查看次数

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

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

这是我的底部导航代码,

<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
查看次数

全屏时BottomNavigationView跳起来留下空白

对于BottomNavigationView 的最后一个选项卡,我希望内容位于状态栏下方并使状态栏完全透明。这是按预期工作的,但底部跳转跳转在最后选项卡时跳起底部的空白空间。

SO中有类似的主题说将fitWindowSystems设置为false。我试过了,但没有帮助。

在此处输入图片说明

ExplorerFragment.java

public class ExplorerFragment extends Fragment {

    public ExplorerFragment() {
    }

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            Window window = getActivity().getWindow();
            window.getDecorView().setSystemUiVisibility(
                    View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
                            View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
                            | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                            | View.SYSTEM_UI_FLAG_IMMERSIVE);
            window.setStatusBarColor(ContextCompat.getColor(getContext(), android.R.color.transparent));
        }
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            View decor = getActivity().getWindow().getDecorView();
            decor.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
        }
    }

    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {

        return inflater.inflate(R.layout.fragment_explorer, …
Run Code Online (Sandbox Code Playgroud)

java android fullscreen bottomnavigationview

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

实施 Material Design 入门示例

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

在此处输入图片说明

android tabbar android-viewpager bottomnavigationview android-bottomnav

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

Android底部导航:图标和文本之间的空间

如何以编程方式更改 BottomNavigation 中图标和文本之间的垂直间距?我发现的唯一方法是修改dimens.xml:

<dimen name="design_bottom_navigation_height" tools:override="true">60dp</dimen>
Run Code Online (Sandbox Code Playgroud)

但无法从代码中修改尺寸。我应该怎么办?当我们修改“design_bottom_navigation_height”时,如何找到哪个参数发生了变化?提前致谢。

java android bottomnavigationview

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