BottomNavigationView入门

底部菜单控件BottomNavigationView的使用 BottomNavigationView实现底部导航栏的整体效果如下图所示: 基本使用 BottomNavigationView控件的主要属性含义: 控件点击时候颜色选择@color/sl_color_green_grey 完整的MainActivity代码 运行的效果图如下: item多的时候,指的是item非选中状态显示文字,有以下几个值:它们依次运行如下图所示 auto和select和i 属性sShifting有关 此时isShifting=true;你会发现auto和 selected的效 阅读详情
AI摘要

本文介绍了Android官方组件BottomNavigationView的基本使用方法,包括如何定义菜单、添加到布局中、设置监听器进行布局切换,以及如何自定义选中状态的图标和文字样式。同时,还详细讲解了BottomNavigationView的常用属性和方法,帮助开发者更好地理解和使用这一组件。

BottomNavigationView 是 Android 官方提供的底部导航栏组件,旨在简化应用程序中不同功能页面之间的切换。 它通常用于显示三个到五个主要功能项,方便用户快速访问应用的核心部分。
BottomNavigationView一般与fragment配合使用。具体这样配合使用:

  • BottomNavigationView+FragmentContainerView+Fragment
  • BottomNavigationView+ViewPager+Fragment
    如有不对或需要补充的地方欢迎评论区告诉我。

一、简单使用

这里使用BottomNavigationView+FragmentContainerView+Fragment实现布局切换
1. 定义菜单

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/workbenches"
        android:icon="@drawable/baseline_apps_24"
        android:title="@string/workbenches" />
    <item
        android:id="@+id/personal_center"
        android:icon="@drawable/round_person_24"
        android:title="@string/personal_center" />
</menu>

2. 在布局中添加BottomNavigationView

<layout 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">

    <LinearLayout
        android:id="@+id/main"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context=".ui.workbenches.WorkbenchActivity">

        <View
            android:layout_width="match_parent"
            android:layout_height="80dp" />

        <androidx.fragment.app.FragmentContainerView
            android:id="@+id/fcv"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1" />

        <com.google.android.material.bottomnavigation.BottomNavigationView
            android:id="@+id/bnv"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/shape_bottom_navigation_bg"
            app:menu="@menu/workbenches" />

    </LinearLayout>
</layout>

3. 设置监听器 切换布局

public class WorkbenchActivity extends BaseActivity<WorkbenchesViewModel, ActivityWorkbenchBinding> {

    private ModuleFragment moduleFragment;
    private UserFragment userFragment;

    @Override
    protected WorkbenchesViewModel createViewModel() {
        return new ViewModelProvider(this).get(WorkbenchesViewModel.class);
    }

    @Override
    protected ActivityWorkbenchBinding createDataBinding() {
        return ActivityWorkbenchBinding.inflate(getLayoutInflater());
    }

    @Override
    protected void initView() {
        moduleFragment = new ModuleFragment();
        userFragment = new UserFragment();
        // 默认显示工作台
        getSupportFragmentManager().beginTransaction().replace(R.id.fcv, moduleFragment).commit();

        binding.bnv.setOnItemSelectedListener(new NavigationBarView.OnItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(@NonNull MenuItem item) {
                int itemId = item.getItemId();
                if (itemId == R.id.workbenches) {
                    getSupportFragmentManager().beginTransaction().replace(R.id.fcv, moduleFragment).commit();
                } else if (itemId == R.id.personal_center) {
                    getSupportFragmentManager().beginTransaction().replace(R.id.fcv, userFragment).commit();
                }
                return true;
            }
        });
    }

    @Override
    protected void initData() {

    }
}

在这里插入图片描述

二、自定义选中状态等

1. 选中状态(自定义图标和文本颜色)
在 res/color 目录下创建一个名为 selector_bottom_navigation_item.xml 的文件

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:color="@color/text" android:state_checked="false" />
    <item android:color="@color/primary" android:state_checked="true" />
</selector>

在布局文件中,使用 app:itemIconTint 和 app:itemTextColor 属性引用上述颜色选择器

<com.google.android.material.bottomnavigation.BottomNavigationView
	android:id="@+id/bnv"
	android:layout_width="match_parent"
	android:layout_height="wrap_content"
	android:background="@drawable/shape_bottom_navigation_bg"
	app:itemIconTint="@color/selector_bottom_navigation_item"
	app:itemTextColor="@color/selector_bottom_navigation_item"
	app:menu="@menu/workbenches" />

2. 自定义选中状态的图标
如果希望在选中状态下使用不同的图标
在 res/drawable 目录下,创建不同状态下的图标资源,例如 selector_workbenches.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 选中状态 -->
    <item android:drawable="@drawable/ic_workbenches_selected" android:state_checked="true"/>
    <!-- 未选中状态 -->
    <item android:drawable="@drawable/ic_workbenches_unselected" android:state_checked="false"/>
</selector>

在 res/menu/workbenches.xml 中,设置每个 item 的 android:icon 属性

<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/workbenches"
        android:icon="@drawable/selector_workbenches"
        android:title="@string/workbenches" />
    <item
        android:id="@+id/personal_center"
        android:icon="@drawable/selector_personal_center"
        android:title="@string/personal_center" />
</menu>

3. 自定义选中状态的文字样式(字体颜色和字体大小)
在 res/values/styles.xml 文件中,添加样式

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- 选中项的文本样式 -->
    <style name="TextAppearance.Active" parent="TextAppearance.AppCompat.Medium">
        <!-- <item name="android:textColor">@color/primary</item> --> <!-- 尝试设置但不生效 -->
        <item name="android:textSize">14sp</item>  <!-- 选中文本大小 -->
    </style>
    <!-- 未选中项的文本样式 -->
    <style name="TextAppearance.Inactive" parent="TextAppearance.AppCompat.Medium">
        <!-- <item name="android:textColor">@color/text</item> --> <!-- 尝试设置但不生效 -->
        <item name="android:textSize">12sp</item>  <!-- 未选中文本大小 -->
    </style>
</resources>

设置字体颜色使用 “1” 中的 app:itemTextColor="@color/selector_bottom_navigation_item"
在布局文件中,使用 app:itemTextAppearanceActive 、 app:itemTextAppearanceInactive 和 app:itemTextColor 属性引用上述样式和颜色选择器

<com.google.android.material.bottomnavigation.BottomNavigationView
	android:id="@+id/bnv"
	android:layout_width="match_parent"
	android:layout_height="wrap_content"
	android:background="@drawable/shape_bottom_navigation_bg"
	app:itemTextAppearanceActive="@style/TextAppearance.Active"
	app:itemTextAppearanceInactive="@style/TextAppearance.Inactive"
	app:itemTextColor="@color/selector_bottom_navigation_item"
	app:menu="@menu/workbenches" />

三、常用的属性和方法

1. 属性和方法
BottomNavigationView 继承自 NavigationBarView

  • BottomNavigationView 常用方法
    • getMaxItemCount():返回NavigationBarView中可以显示的最大项目数。(固定值:5)
    • isItemHorizontalTranslationEnabled():返回当组合项目宽度填满屏幕时,菜单项是否在选择时水平平移。
    • setItemHorizontalTranslationEnabled(boolean itemHorizontalTranslationEnabled):设置当组合项目宽度填满屏幕时,菜单项是否在选择时水平平移。
    • setOnNavigationItemReselectedListener(BottomNavigationView.OnNavigationItemReselectedListener listener):已弃用,请使用 NavigationBarView.setOnItemSelectedListener(OnItemSelectedListener)
    • setOnNavigationItemSelectedListener(BottomNavigationView.OnNavigationItemSelectedListener listener):已弃用,请使用 NavigationBarView.setOnItemSelectedListener(OnItemSelectedListener)
  • NavigationBarView 常用方法
    • 图标(icon)相关
      • setItemIconTintList(ColorStateList tint):设置菜单项图标的不同状态(正常、选定、聚焦等)的颜色
      • setItemIconSize(int iconSize):设置菜单项图标的大小
      • setItemIconSizeRes(int iconSizeRes):设置菜单项图标的大小
    • 标签(label)相关
      • setItemTextColor(ColorStateList textColor):设置菜单项文本的不同状态(正常、选定、聚焦等)的颜色
      • setLabelVisibilityMode(int labelVisibilityMode):设置 BottomNavigationView 每一项的标签可见性模式
      • setItemTextAppearanceActive(int textAppearanceRes):设置用于被选择的菜单项标签的文本外观。
      • setItemTextAppearanceInactive(int textAppearanceRes):设置用于未选择的菜单项标签的文本外观。
      • setItemTextAppearanceActiveBoldEnabled(boolean isBold):设置被选择的菜单项标签是否为粗体
    • 指示器相关1
      • getActiveIndicatorLabelPadding():返回活动指示器容器与项目标签之间的距离
      • setActiveIndicatorLabelPadding(int activeIndicatorLabelPadding):设置活动指示器容器与项目标签之间的距离
      • getItemActiveIndicatorColor():
      • setItemActiveIndicatorColor(ColorStateList csl):设置活动指示器颜色
      • isItemActiveIndicatorEnabled():
      • setItemActiveIndicatorEnabled(boolean enabled):是否启用活动指示器
      • getItemActiveIndicatorWidth():
      • setItemActiveIndicatorWidth(int width):设置活动指示器宽度
      • getItemActiveIndicatorHeight():
      • setItemActiveIndicatorHeight(int height):设置活动指示器高度
      • getItemActiveIndicatorMarginHorizontal():
      • setItemActiveIndicatorMarginHorizontal(int horizontalMargin):设置将在活动指示器的开头和结尾保持的水平边距,确保指示器与其父容器的边缘保持给定的距离
      • getItemActiveIndicatorShapeAppearance():
      • setItemActiveIndicatorShapeAppearance(ShapeAppearanceModel shapeAppearance)2:设置项目活动指示器形状外观
    • 边距相关
      • getItemPaddingBottom():
      • setItemPaddingBottom(int paddingBottom):设置从项目标签底部到导航栏项目底部的距离。
      • getItemPaddingTop():
      • setItemPaddingTop(int paddingTop):设置从项目图标/活动指示器顶部到导航栏项目顶部的距离。
    • 背景相关
      • setItemBackground(Drawable background):将菜单项的背景设置为给定的绘图
      • setItemBackgroundResource(int resId):将菜单项的背景设置为给定的绘图
      • setItemRippleColor(ColorStateList itemRippleColor):将菜单项的背景设置为给定颜色的波纹。
    • 监听相关
      • setItemOnTouchListener(int menuItemId, View.OnTouchListener onTouchListener):为与提供的 menuItemId 关联的项目视图设置 View.OnTouchListener
      • setOnItemReselectedListener(NavigationBarView.OnItemReselectedListener listener):设置一个侦听器,当重新选择当前选定的导航项时,该侦听器将收到通知。这不需要设置“NavigationBarView.OnlitemSelectedListener”。
      • setOnItemSelectedListener(NavigationBarView.OnItemSelectedListener listener):设置一个监听器,当选择导航项时会收到通知。当重新选择当前选定的项目时,此侦听器也会收到通知,除非还设置了“NavigationBarView.setOnItemReselectedListener”。
    • 其他常用方法
      • setSelectedItemId(int itemId):设置所选菜单项ID。
      • setElevation(float elevation):设置此视图的视图的 Z 轴位置高度(像素),有阴影效果,elevation 值较大的视图会在较小的视图之上显示

2. 样式属性
在布局文件中使用到 BottomNavigationView 需要为一些必要的属性配置参数,我们也会在styles.xml和themes.xml文件中定义一些通用样式,好统一项目的风格。相信这些一定有用。

    <declare-styleable name="NavigationBarView">

        <attr name="backgroundTint" />

        <attr name="menu" />

        <attr name="labelVisibilityMode">
            <!-- Label behaves as "labeled" when there are 3 items or less, or "selected" when there are
           4 items or more. -->
            <enum name="auto" value="-1" />
            <!-- Label is shown on the selected navigation item. -->
            <enum name="selected" value="0" />
            <!-- Label is shown on all navigation items. -->
            <enum name="labeled" value="1" />
            <!-- Label is not shown on any navigation items. -->
            <enum name="unlabeled" value="2" />
        </attr>

        <attr name="itemBackground" />

        <attr name="itemRippleColor" />

        <attr name="itemIconSize" />

        <attr name="itemIconTint" />

        <attr name="itemTextAppearanceInactive" format="reference" />

        <attr name="itemTextAppearanceActive" format="reference" />

        <attr name="itemTextAppearanceActiveBoldEnabled" />

        <attr name="itemTextColor" />

        <attr name="itemPaddingTop" format="dimension" />

        <attr name="itemPaddingBottom" format="dimension" />

        <attr name="activeIndicatorLabelPadding" format="dimension" />

        <attr name="itemActiveIndicatorStyle" format="reference" />

        <attr name="elevation" />
    </declare-styleable>

  1. Active Indicator 译为活动指示器,目前场景的显示效果为:在这里插入图片描述 ↩︎

  2. ShapeAppearanceModel 是 Android 中的一个类,主要用于控制视图的形状外观。

    • 圆角控制:设置控件的圆角半径(可以为所有角设置相同半径,也可以为不同角设置不同半径)。
    • 角形状控制:选择不同的角形状(如圆角、直角、切角)。
    • 边缘形状控制:控制视图的边缘外观。
    • 动态修改形状:使用 toBuilder() 方法动态修改现有的形状。
    • 与边框结合使用:结合 MaterialShapeDrawable 实现边框样式控制。
    • 支持多种形状:如圆形、椭圆形等。
    ↩︎
BottomNavigationView从入门到强行改造,取消位移动画?和ViewPager绑定?添加Badge? 前言BottomNavigationView 这个官方控件出了几个月了,也有一些介绍该控件的文章,但我发现大部分博文只是做了简单的用法介绍,并未解决一些需求,比如:取消位移动画、和ViewPager一起使用、加入Badge。所以我又写了这么一篇博客。考虑到一些人可能没时间看到最后,我把改造的库地址放在最前面 BottomNavigationViewEx。基本用法1. 添加依赖compile 'com 阅读详情

相关推荐

安卓BottomNavigationView页面切换

我们通过反射拿到了BottomNavigationMenuView,至于为什么是BottomNavigationView 的第一个子View这就要看源码了,AS中直接可以点进去看。Android端采用底部导航栏的APP非常多,比如微信、微博、支付宝...等等,这也不能说是盲目学习iOS,毕竟好东西大家都可以用,各家操作系统也都在博采众长,互相学习。没办法了,查了一圈资料,发现官方这个控件还不支持代码层级的切换选项(如果你发现了,请告诉我)。细心的朋友可能发现了,上面的代码为什么用了反射呢?

buxiangzilv的博客 926

BottomNavigationView--基本使用总结

1、BottomNavigationView 是什么? BottomNavigationView 是安卓官方提供的底部导航栏,能够方便的实现下图中的底部导航效果。 Paste_Image.png 按照 官方的设计规范 https://material.io/guidelines/components/bottom-navigation.html# 当底部导航的标签在 3--5 个之间的时...

lwh156541064的博客 6689

android-ui入门之使用BottomNavigationView底部导航栏

1.主布局 <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/container" andr

蛐蛐的博客 1390

Android关于BottomNavigationView使用指南

BottomNavigationView

QG 5820

Android进阶之路 - BottomNavigationView的使用与问题处理方案

底部导航的实现之一为BottomNavigationView,乃是design库下的一款控件,或为Android 5.0的一种,同时根据某篇博文介绍说sdk25以后才可以使用,最好相对高于25.1,因为有一些问题没有处理好。 闲话不多唠,此篇文章是根据多篇博文,进行总结性的一篇记录,其中的知识点都已经手动敲打过一次,请继续前行!

Android、前端、小程序、后端 3万+

Navigation使用

文章目录先用起来再加一个fragment切换动画传递数据Safe Args 官方文档看起来 先用起来 1、引入依赖 implementation 'androidx.navigation:navigation-fragment:2.3.0' implementation 'androidx.navigation:navigation-ui:2.3.0' 2、res 下 创建 navigation 资源文件夹 3、navigation 资源文件夹下创建资源文件 navigation.xml,这

Errol's Blog 570

『Android基础入门』ViewPager+Fragment+BottomNavigationView实现底部导航

在ViewPager与Fragment结合实现多页面滑动的学习上再进一步,记录一下ViewPager+Fragment+BottomNavigationView实现底部导航 * 1.复习ViewPager的用法 * 2.复习FragmentPagerAdapter的使用 * 3.BottomNavigationView的使用 * 4.ViewPager切换页面与BottomNavigationView的联动 * 5.Badge(新消息提示,图标右上角红圈)

一个专注于客户端开发的技术er,不定期更新Android,Flutter,HormonyOS等方向的使用心得和感悟 5085

安卓动态设置BottomNavigationView底部导航

前言:解决项目中有多个端的情况 效果图: 1:app\build.gradle中添加依赖: android x : implementation 'androidx.appcompat:appcompat:1.1.0' 非android x(注意版本号对应) : implementation 'com.android.support:design:28.0.0' 2:MainActivity: public class MainActivity extends AppCompatActivity implements BottomNavigationView.OnNavigation

BottomNavigationView基本使用

BottomNavigationView基本使用。

代码界的萌新 1272

VH6501实战:手把手教你用CANoe脚本精准触发CAN总线干扰(附避坑点)

本文详细介绍了使用VH6501和CANoe脚本精准触发CAN总线干扰的实战技巧,包括触发位置控制、ValidityMask配置和干扰序列设置等关键步骤。通过具体代码示例和常见问题排查指南,帮助工程师避开实际应用中的常见陷阱,提升CAN总线干扰测试的准确性和效率。

weixin_33709219的博客 370

com.google.android.material.bottomnavigation.BottomNavigationView 新手详解(Java 版)

你之前如果想做底部导航,可能需要用ImageViewTextView自定义,需要手动处理选中状态、图标变色、文字变色、点击事件、Fragment切换,代码繁琐且样式不统一,而原生Material风格:遵循Google官方设计规范,样式统一、视觉美观,支持圆角、阴影、选中动画(比如标签点击的缩放/变色),适配所有安卓版本;内置选中状态管理:自动处理标签的「选中/未选中」状态,包括图标颜色、文字颜色、大小的切换,无需手动写判断逻辑;与Navigation组件无缝联动一行代码即可完成绑定。

u013862108的博客 789

Zephyr、FreeRTOS 和 RT-Thread

你是…更适合用嵌入式新手,刚接触 RTOSFreeRTOS(入门简单)IoT 项目开发,需要 BLE/WiFi/MQTTZephyr(协议全)想快速构建可部署的产品Zephyr(模块统一)只做单个任务或简单状态机控制FreeRTOS(轻量)做平台化、持续集成、自动测试Zephyr(CI 支持强)

is0815的博客 2246

Android初学者 Fragment + BottomNavigationView 实现常规页面底部导航

FrameLayou和BottomNavigationView,FrameLayou容器这里主要用于承载动态的Fragment页面,BottomNavigationView组件用于实现底部TAB栏目 ,这里的BottomNavigationView组建中menu引用菜单配置。上图看到菜单栏目和 Fragment容器,但是当前FrameLayou中为空的,这里需要我们准备对应菜单数量的Fragment,创建Fragment的方法也就不在赘述了,我们直接在程序入口时进行Fragment管理和初始化填充。

一个爱钓鱼的程序员 1672

VM下安装linux虚拟机(ubuntu)和Intel parallel XE 2013(ifort2013)

VM下安装ubuntu和ifort2013跑自己的模式 由于新冠疫情,本人只能在家工作,很多重要的文件和程序都留在了办公室的linux机器上,工作无法正常开展。本来准备去办公室把机器搬回家不曾想学校所有门禁都关闭,不许进入,何时解禁也没有明确日期。科研不能等人,没条件科研只能想办法创造条件了。 以前在自己的笔记本(windows)上装过一次VM和ifort但无奈程序不能正常跑,所以之前就放弃了。本...

pangdahai3366的博客 1498

基于JavaFX的Http Server模拟器

源码地址 GitHub - DayRain/http-server-simulator: http server 模拟器 功能描述 HttpServer模拟器,通过简单的配置即可模拟第三方服务端,用于接收和响应HTTP请求。 支持同时模拟多个服务、动态添加接口、动态配置返回值。 使用说明 运行 exe运行 编译代码后,点击exe直接运行 代码运行 下载好代码后,运行主类ApplicationStarter即可 新建服务 主界面如下 点击 文件-新建 创建新的服务 ...

小楼夜听雨的博客 2534

关于BottomNavigationView的使用姿势都在这里了

BottomNavigationView使用大全,以及其兄弟组件NavigationRailView的简单使用

BigBoySunshine的专栏 4万+

从零到一:高通Memory QMVS测试环境搭建的避坑指南

本文详细介绍了高通Memory QMVS测试环境搭建的全流程避坑指南,涵盖硬件选择、软件配置、QMVS核心组件安装及测试执行技巧。重点解析了adb工具配置、QPST日志抓取等关键步骤,帮助工程师高效搭建稳定测试环境,避免常见兼容性和稳定性问题。

weixin_29251567的博客 557

BottomNavigationView的基本使用

因为最近自己在写一个壁纸类的apk,需要底部的导航栏来配合fragment来使用,所以写个笔记供读者阅览。 GIF.gif 1.简介 BottomNavigationView是一个底部导航栏控件,一般和fragment一起使用。 2.导包 implementation 'com.android.support:design:27.1.1' 但是这个要注意,这个27.1.1的...

qq_32534441的博客 1万+

白盒测试逻辑覆盖之谓词覆盖、子句覆盖、三类有效字句覆盖等知识点

本篇笔记会简化书本上的概念,用容易理解的方式来说明,有些例子打字麻烦,我会直接放图片! 目录 基础知识: 谓词覆盖predicate coverage 子句覆盖 clause coverage 组合覆盖 combinatorial coverage 有效字句覆盖Active Clause Coverage 广义有效子句覆盖(General Active Clause Coverage) 相关性有效子句覆盖(Correlated Active Clause Coverage) 限制性有效

weixin_46019681的博客 2664

Ubuntu20.04下Docker无缝升级实战指南

本文提供了一份在Ubuntu20.04系统上安全、无缝升级Docker的实战指南。文章详细阐述了升级前的版本检查、数据备份等准备工作,逐步演示了通过APT包管理器进行升级或指定版本安装的操作步骤,并强调了升级后的验证与常见问题回滚方案,确保业务容器平稳过渡。

postgres8guard的博客 481

BottomNavigationView的使用及源码分析

转载请注明出处:http://blog.youkuaiyun.com/crazy1235/article/details/51876192Android Support Library 25.0.0 版本中,新增加了一个API –> BottomNavigationView – 底部导航视图。先来看看这个控件的实现效果。基本使用使用起来也很简单首先在xml中引入该控件

crazy_jack 1万+

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

如何快速入门 Android 开发:android-examples 完整学习路线图

GitHub 加速计划的 android-examples 项目是面向 Android 新手开发者的学习宝库,包含了大量独立的基础示例应用,帮助开发者快速掌握 Android 开发的核心技能和最佳实践。无论你是刚入门的编程爱好者,还是有其他开发经验想转行 Android 的开发者,这个项目都能为你提供清晰的学习路径和实用的代码示例。 [![Android Examples 项目封面](https

gitblog_00680的博客 317

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

BottomNavigationView控制fragment跳转

实现BottomNavigationView控制fragment跳转比较简单,直接在相关路径下右键/new/Activity/Bottom Navigation Activity,便会自动生成相关内容,然后根据需求修改即可。 一、生成相关文件 1)Activity <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://sc

窗前月的博客 3371

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

BeesAndroid源码分析入门:为什么这个项目能降低Android系统学习门槛?

BeesAndroid作为一个专注于Android开发学习的开源项目,通过清晰的代码结构和实用的示例,为新手开发者提供了快速掌握Android系统开发的捷径。本文将深入分析BeesAndroid项目的核心优势,帮助你理解它如何简化Android学习过程。 ## 一、模块化架构:让Android开发逻辑一目了然 BeesAndroid采用了现代化的Android开发架构,将代码按照功能模块清晰划

gitblog_00263的博客 185
上一篇: RecyclerView入门
路ボ
博客等级 码龄7年 24粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值