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

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

来瓶哇哈哈,精神抖擞来一波~ 简单回顾 Material Design,是谷歌在14年的IO大会上提出的一种新的理念,也被称为新的设计语言(也被称为“原材料设计”),称它为设计语言不为过,但是实际上,这仅仅是谷歌提倡的一种新的设计风格...Bottom App Bar Material Design的一个重要特征是设计 BottomAppBar。可适应用户不断变化的需求和行为,So,BottomAppBar是一个从标准物质指导的演变。...Bottom Navigation BottomNavigationView创建底部导航栏,用户只需轻点一下即可轻松浏览和切换顶级内容视图。 ...当项目有3到5个顶层(底部)目的地导航到时,可以使用此模式。...那下面按照步骤操作一次: Step 1:在布局中添加BottomNavigationView: BottomNavigationView

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

    Android底部导航——BottomNavigationView+ViewPager+Fragment

    前言: Android端采用底部导航栏的APP非常多,比如微信、微博、支付宝…等等,这也不能说是盲目学习iOS,毕竟好东西大家都可以用,各家操作系统也都在博采众长,互相学习。...Android端的底部导航栏有着一套规范,详情 这篇文章为大家带来 1.官方BottomNavigationView的使用方法 2.结合ViewPager、Fragment实现一个流行UI布局!...属性+selector状态切换)、RadioGroup + RadioButton等等组合控件的方法自定义实现复杂效果。...开始 1.新建project然后导入以下support:design library,BottomNavigationView就在这个design库中。...compile'com.android.support:design:25.0.1' compile'com.android.support:support-v4:25.0.1' 2.在res下新建menu

    3.9K21

    IT课程 CSS基础 022_文本、字体、链接

    实际上设定的是页面上块级元素的显示方向——要么是从上到下,要么是从右到左,要么是从左到右。而这决定了文本的方向。 horizontal-tb: 块流向从上至下。对应的文本方向是横向的。...horizontal-tb书写模式下块的方向是从上到下的横向的,而 vertical-rl书写模式下块的方向是从右到左的纵向的。因此,块维度指的总是块在页面书写模式下的显示方向。...而内联维度指的总是文本方向。 这张图展示了在水平书写模式下的两种维度。 这张图片展示了纵向书写模式下的两种维度。...: lowercase;">看看我是如何转换的 hello CSS 效果: 文本溢出 在 CSS 中,可以使用 overflow 属性来处理文本溢出。...建议在正文中使用至少 16px 的字体大小。 字体单位选择: 使用相对单位(em、rem、%)可以更好地适应用户浏览器中设置的字体大小偏好,增加网站的可访问性。

    11510

    滴滴全链路压测解决之道

    那有没有可能在中国开辟一个甚至多个虚拟的城市呢,压测只在虚拟城市进行呢?...压测流量标记方案 考虑这样的场景:在新开辟的虚拟城市,某虚拟的乘客要打车,他打开虚拟的手机端,输入目的地,点击「立即预约」,请求发送到滴滴的后台系统,后台应该怎么样处理?...最终我们选择了方案 2,不但与业务完全解耦,还可以避免方案 1 中某些系统或接口无法拿到业务标记的情况。而且这种方式,客观上也可以推进 Trace 通路在公司的应用。...如何在不改代码的情况下可以压测不同的业务场景?我们实现了可动态调整的业务模型。 ? 该模型中,司乘基本的交易过程、状态变化可以通过模型编辑完成,通过权重,可以调整用户本地单、跨城单的比例。...假设 A 城市有 1 万司机,高峰期有 1 万乘客在发单,他们都是随机而均匀分布的,如果把全部司机瞬间投放完成,所有乘客立即发单,绝大多数订单应该是可以派出并完成交易的。

    89620

    如何快速找到并验证影响因变量Y的自变量X呢?

    对比,包括横向对比和纵向对比; 关联,即探索变量之间的相关性; 注:前面提到的“空间维度上的相关”包括变量之间的相关性和横向对比,“时间维度上的共变”主要是指纵向对比,即基于指标在时间序列上的波动时间点...1.1 对比 对比分为横向对比和纵向对比两类,更多可参考数据分析常用思维。...纵向对比,在时间维度上看数据变化的趋势,需要注意: 对比的颗粒度要视业务周期而定(或者用户完成单次目标行为的时间周期),可以是年、季、月、周、天、时等; 纵向对比可以是相同颗粒度下的同比和环比,也可以是跨颗粒度的对比...2 验证模式 验证模式的方法也可以按纵向和横向分为两种: 纵向,基于历史数据,时间点匹配以及数据周期验证; 横向,跨群组的对比,对照实验设计及跨组验证; 2.1 纵向验证 首先看“模式”是否是周期性出现...跨群体稳定性,可以保持变量X1不动,改变其他自变量,看X1->Y的关系是否稳定,即看具有同一特征的不同人群在指标Y上的表现,如果模式在跨群体上表现稳定,那么就验证了X1和Y的关系模式是OK的,如果在其他群体上没有验证

    1.8K10

    滴滴全链路压测解决之道

    那有没有可能在中国开辟一个甚至多个虚拟的城市呢,压测只在虚拟城市进行呢?...压测流量标记方案 考虑这样的场景:在新开辟的虚拟城市,某虚拟的乘客要打车,他打开虚拟的手机端,输入目的地,点击「立即预约」,请求发送到滴滴的后台系统,后台应该怎么样处理?...最终我们选择了方案 2,不但与业务完全解耦,还可以避免方案 1 中某些系统或接口无法拿到业务标记的情况。而且这种方式,客观上也可以推进 Trace 通路在公司的应用。...如何在不改代码的情况下可以压测不同的业务场景?我们实现了可动态调整的业务模型。 ? 该模型中,司乘基本的交易过程、状态变化可以通过模型编辑完成,通过权重,可以调整用户本地单、跨城单的比例。...假设 A 城市有 1 万司机,高峰期有 1 万乘客在发单,他们都是随机而均匀分布的,如果把全部司机瞬间投放完成,所有乘客立即发单,绝大多数订单应该是可以派出并完成交易的。

    2.1K40

    分布式系统数据库分片认识

    软件开发人员还可以在其应用程序中编写分片代码,以存储或检索正确分片中的信息。 数据库分片的方法有哪些? 数据库分片方法对分片键应用不同的规则,以确定特定数据行的正确节点。以下是常见的分片架构。...数据库分片是一种横向扩缩策略,它分配额外的节点或计算机来共享应用程序的工作负载。由于其容错架构,组织可以从横向扩缩中受益。当一台计算机出现故障时,其他计算机将继续运行而不会中断。...数据库设计人员通过在多个服务器之间分布逻辑分片来减少停机时间。 不过,分片是几种数据库扩缩策略中的一种。探索其他技术并了解它们之间的差别。 纵向扩缩 纵向扩缩可提高单台计算机的计算能力。...同时,作为一种横向扩缩策略,分片更易于实施。例如,IT 团队安装多台计算机,而不是升级旧的计算机硬件。 复制 复制是一种制作数据库的精确副本并将其存储在不同计算机上的技术。...分片可以与复制结合使用,以实现可扩展性和高可用性。 在某些情况下,数据库分片可能包含特定数据集的复制。例如,向美国和欧洲客户销售产品的零售商店,可能会将尺寸转换表的副本存储在两个区域的不同分片上。

    95520

    Android 多返回栈技术详解

    系统返回按钮的乐趣 无论您在使用 Android 全新的 手势导航 还是传统的导航栏,用户的 "返回" 操作是 Android 用户体验中关键的一环,把握好返回功能的设计可以使应用更加贴近整个生态系统。...Fragment 中的多返回栈 在 surface 层级,对于 多返回栈的支持 貌似很直接,但其实需要额外解释一下 "Fragment 返回栈" 到底是什么。...Activity 中实现的 "目的地界面"。...在 Navigation 中启用多返回栈 如果您正在使用 NavigationUI,它是用于连接您的 NavController 到 Material 视图组件的一系列专用助手,您会发现对于菜单项、BottomNavigationView...比如,在 Compose 中,任何全局的导航模式 (无论是底部导航栏、导航边栏、抽屉式导航栏或者任何您能想到的形式) 都可以使用我们在与 底部导航栏集成 所介绍的相同的技术,并且结合 saveState

    96810

    数据库可扩展性和巨型跳蚤:复杂性课程

    它是一种微小的生物,肉眼几乎看不见。但它却很强大,能够跳跃超过其身体长度 100 倍的距离。现在想象一下将跳蚤放大到人类的大小。假设你可以让它在物理上与其较小的形态完全相同,只是在每个维度上都更大。...在大多数数据库(包括 MySQL)中,在最坏的情况下,由于复制滞后,提交到一个节点的更改可能需要几秒甚至几分钟才能在其他节点上注册。例如,复制滞后的一个罪魁祸首是 DDL。...由于底层系统不保证强一致性,因此开发人员需要在代码中设计一种解决方法。这些限制在单节点数据库中并不明显。它们是架构决策的结果,这些决策在较小规模上是完全合理的。...但是,像 MongoDB 和其他 NoSQL 解决方案一样,剥离模式会产生可扩展性问题。除其他问题外,这使得在大型组织中运行分析更具挑战性。...分布式 SQL 是一种方法,还有其他可能的方法。无论他们如何解决这个问题,他们都必须找到解决运营复杂性的方案。我们现在拥有的是纸面上的规模。企业需要的是实践中的规模。

    7700

    GAN 为什么需要如此多的噪声?

    图 4:使用分位函数将均匀分布(蓝色)映射到正态分布(橙色)的示意图。 2 这与 GAN 有何关系? 在上述场景下,我们在处理过程中使用了分位函数。...在《Training a GAN to Sample from the Normal Distribution》一文中,我们解释了在数据紧缺、并且没有可以使用的分位函数的情况下,如何使用 GAN 从正态分布中采样...貌似没有很好的方法能做到这一点。 当然,我们可以使用 Peano 曲线,但是这样我们就会失去某种很有用的特性,即:令数据点在输入空间中距离相近,也会使数据点在输出空间中接近,反之亦然。...随着螺旋从圆心向外扩展,分布的密度在减小,在悬臂上横向的密度是均匀的。 如图 13 所示的螺旋式分布,从某种程度上来说比八个高斯分布的问题更简单。...螺旋式分布只有一种模式(尽管被拉长和扭曲了),GAN 不会被迫将其连续输入离散化。它可以被高效地描述为两个维度:一个维度描述沿着螺旋的位置,另一个维度描述在螺旋内横向的位置。

    1.2K40

    实践 | Google IO 应用是如何适配大尺寸屏幕 UI 的?

    其中在 res/layout 目录下的布局中包含了 BottomNavigationView,而在 res/layout-w720dp 目录下的布局中则包含了 NavigationRailView。...单窗格还是双窗格 在日程功能中,我们用列表-详情的模式来展示信息的层次。在宽屏幕设备上,显示区域被划分为左侧的会议列表和右侧的所选会议详细信息。...经过一些实验,我们发现即使是在大屏幕的平板上,竖屏模式同时显示出双窗格内容会使得信息的显示过于密集,所以这两个宽度值可以保证只在横屏模式下才同时展现全部窗格的内容。...至于导航图,日程的目的地页面现在是双窗格 Fragment,而每个窗格中可以展示的目的地都已经被迁移到新的导航图中了。...上面这些情况都可以在 OnBackPressedCallback 中处理,这个回调在双窗格 Fragment 的 onViewCreated() 方法执行时会被注册 (您可以在这里了解更多关于添加 自定义导航

    2.1K20

    关于AI(深度学习)相关项目 K8s 部署的一些总结

    1写在前面 工作中遇到,简单整理 第一次接触,一些粗浅的思考 理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。...,方便维护,这里需要分情况考虑, 如果部署 Pod 相对较少,可以考虑通过 亲和性来处理,控制在指定标签的节点上,但是可能存在Pod不会均匀分布的情况,如果希望均匀分布,可以使用拓扑分布约束。...数量相对较多时, service 往往不能均匀的负载(底层使用 iptable ),存在两级分化 默认情况下 ,SVC 使用轮询模式 RoundRobin 的负载分发策略,实现方式略有不同 当使用...,在速度上要比 对应该的能力提供 Pod 直接从中间件拉取数据处理慢的多的多。...具体的处理可以使用K8s 中 job 控制器来实现,根据数据量,创建对应 job 任务,而且每次处理的 Job 也可以分批次控制。

    33610

    Android MVVM框架使用(十三)UI更新 (App启动白屏优化、适配Android10.0深色模式)

    将鼠标悬停在这个颜色值上会出现一个弹窗,告诉你这个页面在默认和深色模式下的背景颜色的色值,通过这个你就知道你的改动有没有效果。...像这种常规的文字颜色,背景颜色改动起来其实是很简单的。那么我们难度上升一下,item颜色要怎么去改。 4. 菜单适配   这张图我想你应该不陌生,如果你是一篇一篇看过来的话,这是深色模式下的样子。...BottomNavigationView   在App的HomeActivity中是通过BottomNavigationView去进行底部导航的,那么它的item有一个选中的效果,还有未选中的效果,同时还需要适配深色模式...属性去设置的图标颜色,这里在深色模式下改成白的。...深色模式判断   有时候我们需要根据当前是否为深色模式去设置一些参数,比如记事本页面的状态栏,在默认情况下是黑色的深色模式,在深色模式下需要状态栏浅色模式,这里就需要判断一下,我们可以写一个方法在BaseActivity

    1.1K10

    使用导航组件: 条件导航 | MAD Skills

    例如,用户可能会跟随深层链接前往一个需要用户登录的目的地,或者您可能会在游戏中针对玩家的输赢提供不同的目的地。...我将使用 Datastore API 来保存用户的选择,并据此决定是否在底部导航中展示 coffeeList 目的地。...后续应用的启动将会记住我做出的选择并将我导航至正确的起始目的地。 就是如此!我们在 DonutTracker 应用中添加了条件导航。但是我们如何测试该流程?...测试导航 我在 androidTest 文件夹下创建了一个名为 OneTimeFlowTest 的测试类。然后我创建了一个名为 testFirstRun() 的测试方法,并为它添加 @Test 注解。...在接下来的文章中,我们将学习如何使用嵌套图 (Nested graphs) 并将模块化该应用。

    1.6K30

    3D检测新SOTA | PointPillar与Faster RCNN结合会碰撞出怎样的火花

    ,以在单个可管理尺度下进行进一步的方框重新定义。...如表2所示,尽管在4倍下采样的2D特征图(即0.4m的Pillar尺寸)上细化了3D Proposals,但所提出的Pillar R-CNN在大规模Waymo开放数据集上实现了与先前最先进的两阶段方法相当的检测精度...4、本文方法 如图2所示提出的Pillar R-CNN在概念上很简单,包括两个阶段:第一阶段(RPN)产生3D Proposals,并在所有类别相关尺度上进行分类;第二阶段(R-CNN)以可管理的分辨率细化...值得注意的是第2个R-CNN阶段与Faster R-CNN略有不同,因为它需要在可管理的尺度上使用池化图,并通过横向连接层充分融合语义空间特征。...表4的第2行、第4行和第6行显示,所设计的横向连接层可以在各种尺度上编码高级语义和低级几何,以提高3D检测性能。虽然简单,但横向连接层在稀疏的自底向上映射上提供了良好的语义信息,其中大部分为零。

    1.3K20

    C#设计模式开启闯关之路

    命令模式的实现可以提供命令的撤销和恢复功能。 第十五章 迭代器模式(Iterator) 提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。...第二十一章 访问者模式(Visitor) 表示一个作用于某对象结构中的各个元素的操作。它可以在不改变各元素的类的前提下定义作用于这些元素的新的操作。...设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。...今天我们也将开启设计模式的闯关之路。其中到底有没有联系呢?到底有没有关系呢?   事实上面向对象三大特性在一定程度上体现了面向对象设计的五大原则。那么与设计模式又有什么关系呢。...总结开启闯关之路   打好基础,学习了解其设计的原则,学习设计模式必须在其原则的基础上学习。学习设计模式的路并不平稳,在起初之期,比较多的概念规则都不是很清楚、基础不扎实。会给学习之路带来诸多麻烦。

    55252

    Material Design — Navigation drawerStandard drawer Modal drawer Bottom drawer

    可以使用 headers 和 dividers 来增强,以组织更长的 lists。 ? Sheet Navigation drawer 的内容包含在侧面或底部 sheet 中。...使用惯用且可识别的icon,并且不要用相同的icon代表不同一级目的地 ?...二级目的地可用相同的icon,特别是在一个collection里时;不要有些目的地有图标有些没有 ---- Dividers (optional) Horizontal dividers 可用于分隔列表中的各组导航目的地...Dismissible drawer:如果用户可能将注意力集中在屏幕内容上,并且需要更加低频访问其导航目的地时,则可以使用 dismissible drawer。 ?...移动端打开(横向) 在移动端的横向方向上,较高的 bottom navigation drawers 会自动打开到全屏模式。 ? ?

    3.8K40
    领券