首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

深入浅出 NavigationUI | MAD Skills

这是第二个关于导航 (Navigation) 的 MAD Skills 系列,如果您想回顾过去发布的内容,请参考下面链接查看: 导航组件概览 导航到对话框 在应用中导航时使用 SafeArgs 使用深层链接导航...比如,当您在最顶层的目的页面时,就不会显示回退按钮,因为没有更高层级的页面。 默认情况下,您应用的最初页面是唯一的最顶层目的页面,但是您也可以定义多个最顶层目的页面。...mainActivity 的布局中添加了 BottomNavigationView,并且将 bottom_nav_menu 设置为 BottomNavigationView的 menu 属性。...,NavigationView 会代替 BottomNavigationView 显示在屏幕上。...△ 在屏幕较宽的设备上运行 Donut Tracker 请注意,当我切换页面的时候返回按钮会自动显示在左上角。

3K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    听说谷歌Baba更新了 Material UI ...

    maven.google.com"        }    } } Step 2:修改编译版本 // 2.修改编译版本为 android - P compileSdkVersion 'android-P' Step 3:移除项目工程中依赖的...v7包以及添加material依赖 dependencies {    // 3.移除项目工程中依赖的v7包    implementation fileTree(dir: 'libs', include...使用也是很Easy,如下: 创建一个菜单资源 ,最多5个导航目标(BottomNavigationView不支持超过5个项目); 在内容下面放置BottomNavigationView; 将BottomNavigationView...那下面按照步骤操作一次: Step 1:在布局中添加BottomNavigationView: BottomNavigationView...如果已经在Activity使用CoordinatorLayout,添加底部表单很简单: 将任何视图添加为CoordinatorLayout的直接子视图。

    3K20

    BottomNavigationView使用,配合ViewPager、修改图标大小、去掉文字等

    目录 1、布局 2、常用属性 3、设置监听 4、默认选中 5、配合ViewPager 6、添加角标 7、修改图标大小 8、去除波纹效果 9、Github MaterialDesign中的一个底部导航栏...(默认高度56dp,菜单在3~5个),使用简单,自带动画 1、布局 BottomNavigationView android...navigation"/> 2、常用属性 app:itemBackground 背景颜色 app:itemIconTint 图标颜色 app:itemTextColor 文字颜色 app:menu 导航菜单...app:labelVisibilityMode 文字显示状态,等于labeled的时候,即使item大于3个也显示文字,unlabeled不显示文字,只有图片 BottomNavigationView的item选中的时候让ViewPager切换page 6、添加角标 查看:BottomNavigationView添加角标(BadgeView)

    1.6K60

    Android开发之漫漫长途 XIII——Fragment最佳实践

    中加载布局文件,该布局文件也非常简单,仅仅定义了一个帧布局,在帧布局中包含了一个TextView 在Fragment中重写onHiddenChanged方法可以对Fragment的hide和show状态进行监听。...这是因为replace操作,每次都会把container中的现有的fragment实例清空,然后再把指定的fragment添加进去,就就造成了在切换到以前的fragment时,就会重新实例会fragment...我们不能使用replace来进行页面的切换,那么可使用的方法貌似只有add了,我们可以在加载的时候判断Fragment是不是已经被添加到队列中,如果已添加,我们就显示(show)该Fragment,隐藏...,Fragment只实例一次,少了销毁又重新创建等带来的性能消耗,另我们想要在Fragment中更新数据时,我们可以在自定义Fragment中重写其onHiddenChanged方法 @Override

    1.3K20

    Android Notes|BottomNavigationView 爱上 Lottie

    以前大部分项目底部导航栏关于图片部分的实现,要么两套图 selector 切换,要么通过着色器 tint 进行渲染,总之最后呈现的效果便是在点击时两张图静态切换,说 Low 吧,也还凑合,但是总是没那么高大上...项目重构时,韩总说了,之前的方式呈现的效果太 Low 了,这次重构要求底部要动。(内心默默来句,你咋不上天。) 先来看个两者间对比效果吧~ 效果对比 原有两张静态图切换: ? 小动画浪起来: ?...而关于选中状态切换时,对应标题字体大小发生改变以及导航栏高度,都可以通过在 dimens 定义如下解决: <!...需要单独说明的属性: app:labelVisibilityMode:item 标签显示模式 auto:item 少于等于 3 个时,标题处于显示状态;大于等于 4 个,选中才显示标题; selected...身为猿猿,面对实际开发中遇到的问题,一定要采取多方案,首要保证内容、结果的输出,其次才是合理的循循渐进的优化。 2、BottomNavigationView Item 长按提示怎么搞掉?

    3.7K21

    Android Navigation + Fragment 制作APP主页面导航(步骤 + 源码)

    从这个图来看,项目本身没有任何问题,为了保险起见,建议先运行一下。 1. 添加依赖 Navigation 是JetPack中的组件,感兴趣可以去查看Google JetPack官方文档。...添加好之后,点击Sync进行项目同步,同步时会自动下载这些依赖库并配置到你的项目中。...NavController:在得知切换目标时,控制NavHost去显示B这个Fragment。 这么一说,你是否有一些理解了呢? 2....添加NavHost 这个在上面是介绍过的,它是用来装载和显示Fragment的,都知道Fragment是要依附在Activity上的,那么很明显这个NavHost也是要放在Activity中,那么下面打开...,然后显示在NavHostFragment中。

    10.2K42

    【错误记录】Kotlin 中 Lambda 表达式返回值报错 ( ‘return‘ is not allowed here | 匿名内部类 | 尾随 Lambda 规范 - Lambda 替换接口 )

    一、错误记录 在 Android 中 , 使用 Kotlin 开发 , 为 BottomNavigationView 设置 OnNavigationItemSelectedListener 监听接口 ;...(@NonNull MenuItem var1); 函数 , 需要返回一个布尔值 ; 直接使用 return 返回布尔值 , 就报如下错误 ; 二、问题分析 1、匿名内部类 BottomNavigationView...return 需要 @ 标签 这里特别注意 : 在 Kotlin 中 , 在 lambda 表达式或匿名函数中使用 return 语句时 , 必须使用 return@label 语法来指定你要返回的标签...; 在 Kotlin 中 , return 语句默认是从最近的封闭函数返回的 , 而在 lambda 表达式中使用 return 时 , 它会尝试从包含它的函数返回 ; 三、解决方案 在 Lambda...表达式的 return 返回时 , 添加 @ 标签 , 不能直接使用 return 进行返回 ; // Lambda 替换对象表达式 navView.setOnNavigationItemSelectedListener

    13210

    Android使用BottomNavigationView以及如何使用SVG图片

    SVG图片的使用 iconfont:https://www.iconfont.cn/ 我们经常在iconfont上找图片 然后下载下载放在项目里面,为了适配我们还要下载不同尺寸的图片,但是明明iconfont...73.92c0-8.8 7.2-16 16-16s16 7.2 16 16v73.92c0 8.96-7.04 16-16 16z" p-id="3929"> 我们在Android...BottomNavigationView是一个底部导航栏控件,一般和fragment一起使用。...项目依赖 implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.android.support:design...(文字和图片都写在这个里面,推荐图片使用矢量图) app:itemTextColor指的是导航栏文字的颜色 app:itemIconTint指的是导航栏中图片的颜色(我之前还以为只有矢量的才能着色,其实无论菜单中的图片是否为矢量图都可以设置着色

    1.8K10

    利用BottomNavigationView实现底部标签栏

    在Android Studio上创建官方默认的首屏标签页面很方便,首先右击需要添加标签栏的模块,在弹出的右键菜单中依次选择“New”——“Activity”——“Bottom Navigation Activity...注意到初始页面的Home标签从文字到图片均为高亮显示,说明当前处于Home频道。接着点击Dashboard标签,此时界面如下图所示,可见切换到了Dashboard频道。 ?...底部导航视图又由一排标签菜单组成,具体菜单在@menu/bottom_nav_menu中定义;而碎片为各频道的主体部分,具体内容在app:navGraph="@navigation/mobile_navigation...中定义。...每个item节点都拥有id、icon、title三个属性,其中id指定该菜单项的编号,icon指定该菜单项的图标,title指定该菜单项的文本。

    2.2K30

    安卓Navigation系列——进阶篇

    的布局中(这里为MainActivity的activity_main)中添加BottomNavigationView控件, 中可以看出,mGraphId就是在布局文件中定义NavHostFragment时,通过app:navGraph属性指定的导航资源文件, 跟进setGraph()方法, public void...,通过getNavInflater().inflate方法创建出一个NavGraph对象,传到第三个重载的方法中,并赋值给成员变量mGraph,最后在onGraphCreated方法中将第一个页面显示出来...app:navGraph属性值替换为fix_nav_graph, “修复版的”FragmentNavigator写好后,在MainActivity中,通过navController把它添加到fragmentNavigator...navigator,而此时在解析fixFragment节点时,我们自定义的FixFragmentNavigator还未添加进来,所以抛了这个异常。

    3.2K30

    Material Design 在 Android 中的应用

    因为之前毕设项目趣闻中有用到「Support Design」库中的控件,所以写起来会顺手一点。...在分享时能将每个知识点都有个透彻而又完整的分析,不要追求速度。实话说这次分享确实给我带了不少的收获,相信在下次分享中能够有一个满意的表现。...越读越能感受到它的妙处,假如你能严格按照它的规范进行开发项目,哪怕你不是专业的UI设计师,相信你的产品一定会不难看的。 那接下来就主要介绍一下Material Desing在Android中应用。。...这些控件被统一放置在support design库中,以供开发中使用。使用这些库的前提是API>=21,当然如果你想在 5.0 一下的设备这些控件的话,需要添加appcompat包进行向下兼容。 ?...Material Design 在「口袋」中的应用 其实在咱们的「口袋贵金属」项目中也到找到很多MD的元素。 首先是点击的水波纹效果: ? 其次是交易圈的滑动交互: ?

    1.3K20

    Base封装(一)--我的最简MVP架构

    ,在Android中View一般代表着我们的xml进行界面的描述,而对于模型Model部分则大多对应于本地的数据文件或网络获取的数据体,很多情况下我们对这些数据的处理也会在这一层中进行,最后的控制器Controller...而MVP中view通过presenter访问model,大大的减小了耦合性,业务逻辑都交给P处理,通过P访问V层更改UI。MVP模式可以分离显示层与逻辑层,它们之间通过接口进行通信,降低耦合。...View,类多了之后感觉很烦,而View层里的一些常用的方法我们也可以封到base里面,比如loading的显示隐藏,空布局和错误布局的显示… 2.Base封装 1.BaseView package com.hankkin.xlibrary.mvp...中初始化P,并且连接V,在onDestroy()生命周期中释放P中引用的V。...https://github.com/jeasonlzy/okhttp-OkGo 好了下面看我们的例子吧: 项目结构 看一下项目结构 HomeView 我用的Gank.io里面的一个接口获取数据,首先我们定义我们的

    59410
    领券