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

深入浅出 NavigationUI | MAD Skills

在本文中,我们将为大家讲解另外一个用例,即类似操作栏 (Action Bar)、底部标签栏或者抽屉型导航栏之类的 UI 组件如何在应用中实现导航功能。...我需要在应用中增加一些页面,所以有必要使用抽屉式导航栏或者底部标签栏来辅助用户导航。但是我们该如何使用这些 UI 组件来集成导航功能呢?通过点击监听器手动触发导航动作吗? 不需要!无需任何监听器。...NavigationUI 依赖 MenuItem 的 id,用它与导航图中目的页面的 id 进行匹配。我还为每个目的页面设置了图标和标题。...抽屉式导航栏 虽然看上去不错,但是如果您设备的屏幕尺寸较大,那么底部标签栏恐怕无法提供最佳的用户体验。...Donut Tracker 应用并不需要底部标签栏或者抽屉式导航栏,但是添加了新的功能和目的页面后,NavigationUI 可以很大程度上帮助我们处理应用中的导航功能。

3K30

9种最经典的导航模式,APP开发必备

二、底部和顶部双tab导航 标签式导航一般放在底部,如果产品分类内容较多,则采用顶部和底部结合的导航形式,例如下图的今日头条和爱奇艺。 ?...三、抽屉式导航 有的人可能会说,我虽然有6-7个左右标签,但是只有一些标签是主要的,其他标签用户很少使用,这个时候一般采用抽屉式导航。...抽屉式导航是指将一些不常用的功能隐藏在当前页面,当需要用到的时候点击入口或者侧滑即可像抽屉一样展开,上面也说了,这种适合不需要经常切换的次要功能,比如设置、关于、会员等,快手和QQ是采用这种导航形式。...比如下图的拍拍贷和美团。 ? 五、宫格导航 宫格导航主要将入口全部集中在主页面中,各个入口之间相互独立,没有太多的交集,无法跳转互通。 ?...宫格导航的变式有很多,比如上图的美图秀秀增加横向滑动来增加导航入口的数量,支付宝通过纵向滑动来增加导航入口的数量,快手通过控制卡片的大小来显得不单调和凸显主要的内容。

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

    Material Design — Navigation drawerStandard drawer Modal drawer Bottom drawer

    Navigation drawer ---- 用法 Navigation drawer 提供对目的地和 app 功能的访问,如切换帐户。 它们可以永久在屏幕上显示,也可以通过导航菜单图标进行控制。...每个项目都使用文本标签和可选的图标来描述其目的地。 目的地标签 文本标签应该清晰且足够短,以免被 sheet 切断。 ? 可以只有文本标签无图标 ? 保持文本标签简短,但是长度实在太长时就截断 ?...不要换行不要缩小 目的地icon(可选) Icon 可以对标签作为目的地的进行补充。 使用时,应始终放置在文本之前。 App 内组件和内容应参考这些图标。 ?...Dismissible standard drawers 可用于内容优先(如照片库)的布局或用户不太可能经常切换目的地的 app,且应该使用可见的 navigation menu icon 来打开和关闭抽屉...调整 bottom navigation drawer 的打开位置,以便在屏幕底部剪切最后一个视图中的列表项。 这可以通知用户有更多项目要查看。

    3.8K40

    TDesign 更新周报(2022年7月第4周)

    tdesign-vue/releases/tag/0.44.1Vue3 for Web 发布 0.18.1 FeaturesTable: 树形结构,支持 resetData 重置整个树形结构数据TagInput: 支持标签拖拽...body 间去了滚动条宽度Table: 树形结构,懒加载节点重置时(即调用 setData)没有清空子节点信息问题Card: 修复 loading 状态无效Space: 组件中若存在 v-if,则不渲染的组件间距依然存在...事件Button: variant 属性新增 dashedTabbar: 新增 CSS Variable 调整标签栏字体和图标颜色,具体查看文档Grid: external-classes 属性增加...CSS Variable 调整分割线、文本颜色,具体查看文档Indexes: 新增 CSS Variable 调整 标题、背景、文本等颜色,具体查看文档Drawer: 新增 CSS Variable 调整抽屉背景...github.com/Tencent/tdesign-mobile-vue/releases/tag/0.10.0React for Mobile 发布 0.2.0 FeaturesDrawer: 新增抽屉组件详情见

    2.1K40

    iOS 9人机界面指南(四):UI元素(上) - 腾讯ISUX

    如果导航栏左边或右边的文字按钮之间的间距太小,那些文字看起来会像挤在一起一样,让用户难以区分。...如果按钮在导航栏中显得太过拥挤,你可以使用UIBarButtonSystemItemFixedSpace常数来给他们增加适当的间距。...如果按钮之间间距过小,会让蚊子看起来挤在一起,让用户觉得它们难以区分。如果按钮在导航栏中显得太过拥挤,可以用UIBarButtonSystemItemFixedSpace常数来增加他们之间的间距。...Value 2的布局中,文本和副标题中间的垂直间距会让用户专注于副标题的第一 个单词。 ? 重要 以上四种单元格样式均支持添加表格视图元素,如勾选或展开标志。...(下图是iPhone自带的邮件应用,网络视图指的是下图中导航栏和标签栏中间的区域) ? API注释 想要了解如何在代码中定义网络视图,请参考Web Views.

    10.1K51

    Qt 水平布局 QHBoxLayout

    _layout->addStretch(1); // 占整个窗口的 1/n 我们在 addwidget() 函数中增加了第二个参数,设定了控件的比例,如注释所写,按钮 1 占用了...的比例,按钮 2 占用了 2/7 的比例,依次类推,效果就是下图这样了: 【在其他控件中间插入控件】 以上是比例相关的解释,下面我们来看一下如何在这些按钮中插入一个按钮。...() 函数来实现: // button1 后面增加一个间隔,长度为50 _layout->addSpacing(50); 【设置 QHBoxLayout 的边距】 上面所有图中我们都可以看出,窗口和控件之间是有一点点距离的...】 如果你希望将所有控件之间的距离都控制在一个长度,那么你可以通过 setSpacing() 函数来实现,它不同与 addSpcing() 函数,setSpacing() 函数是设置所有控件之间的间距:...// 设置所有控件之间的间距为 0 _layout->setSpacing(0); 与上图相比,可以看出控件之间的间距没有了。

    55030

    React Native 导航:深入研究导航库

    我们将更详细地了解它们如何处理堆栈导航(Stack Navigation)和标签导航(Tab Navigation),这对于应用程序用户体验至关重要。那么,React Navigation究竟是什么?...React Native Navigation的酷炫功能堆栈导航器:这个导航器像专业人士一样处理导航历史。它使用基于堆栈的方法,允许用户在屏幕之间轻松地来回切换。...就像翻书一样 - 只不过,在这种情况下,它是您的应用程序。标签导航器:曾经使用过将不同部分整齐地组织到选项卡中的应用程序吗?这就是标签导航器的魔力所在。...它使得在应用程序部分之间轻松切换就像轻触选项卡一样简单而有效。抽屉导航器:为了增加一丝优雅感,React Navigation引入了抽屉导航器。这就像在侧边有一个秘密滑动抽屉,提供额外的导航选项。..." component={ProfileScreen} />抽屉导航器这就是其魔力所在:用户可以使用流畅的滑动抽屉轻松访问“主页”和“详细信息”屏幕。

    21000

    【软件开发规范七】《Android UI设计规范》

    ,6位(如:#0470C4)就是RGB,值8位(如:#1E000000)头两位是透明度,后6位是RGB值,00是完全透明,FF是完全不透明,比较适中的透明度值是 1E。...** 图片上的文字 ** ​编辑 图片上的文字,需要淡淡的遮罩确保其可读性。深色的遮罩透明度在20%-40%之间,浅色的遮罩透明度在40%-60%之间。 ​...小图标点击区域:48x48dp 侧边抽屉到屏幕右边的距离:56dp 卡片间距:8dp 分隔线上下留白:8dp 大多元素的留白距离:16dp 屏幕左右对齐基线:16dp 文字左侧对齐基线:72dp ​...网格列表与应用于布局和其他可视视图中的网格有着明显的区别。 ​...手机端的侧边抽屉距离屏幕右侧56dp。 ​编辑 侧边抽屉支持滚动。如果内容过长,设置和帮助反馈可以固定在底部。抽屉收起时,会保留之前的滚动位置。 ​

    5.1K20

    Android性能优化:这些绘制优化你一定不能忽略!

    () 优化方案1: 移除默认的 Window 背景 背景 一般应用程序 默认 继承的主题 = windowBackground ,如默认的 Light 主题: 的使用工具:Hierarchy View]( ) 优化方案3:减少布局文件的层级(减少不必要的嵌套) 原理:减少不必要的嵌套 ->> UI层级少 ->> 过度绘制的可能性低 优化方式:使用布局标签...若是右抽屉布局 // 则取抽屉布局的左边界作为裁剪区的右边界、设置原主布局的裁剪区域 } else { final int vleft = v.getLeft(); if (vleft...通过clipRect()设置原主布局的显示范围 = 裁剪区域,使其仅在上图中的红框区域(即不阻碍抽屉布局的区域)显示 // 从而避免过度绘制 canvas.clipRect(clipLeft..., 0, clipRight, getHeight()); } ...... } quickreject() 作用:判断和某个矩形相交 具体措施:若判断与矩形相交,则可跳过相交的区域

    1.1K20

    算法妙应用-算法的复杂度

    举个栗子,当你忘记东西放哪里了,可能会把所有的抽屉都找一遍,假如你有 n 个抽屉,那么找完 n 个抽屉就可以找到你的东西了,每个抽屉都找了一遍,就找了 n 遍。...位于最坏和最好之间的情况是,当你找到中间一个抽屉时,你找到的你的东西了,用大 O 表示法表示就是 O(n/2)。 那么这三种情况,哪一种应该代表算法的时间复杂度呢?...,一个变量占用一块栈空间(想象一下),我们用一个格子来表示,就像下面这样,中间变量也要占用一个格子(其实这个格子在其他栈中叫做 帧,如 Java虚拟机的本地方法栈和虚拟机栈,帧又是一种数据结构)。...上面几种大 O 运行时间,反应在图中如下(注意:图中曲线并不一定从原点开始画的,只需要知道算法运行时间的大概走势就可以了): 几种常见的算法时间.jpg 算法的速度,指的并不是时间,而是增速,反应的在图中就是曲线的斜率...,可以看到,随着输入的增加,有的算法所需要的时间越来长,也就是使用这种算法的程序会越来越慢。

    67330

    Android性能优化:手把手带你全面了解绘制优化

    过度绘制的简介 4.2.2 过度绘制的表现形式 过度绘制 会导致屏幕显示的色块不同,具体如下 附:示例说明 4.2.3 过度绘制的优化原则 很多 过度绘制是难以避免的,如 上述实例的 文字...层级少 ->> 过度绘制的可能性低 优化方式:使用布局标签 & 合适选择布局类型 具体请看文章: 优化方案4:自定义控件View优化:使用 clipRect() 、 quickReject...若是左抽屉布局 // 则取抽屉布局的右边界作为裁剪区的左边界、设置原主布局的裁剪区域,如上图裁剪区域 if (checkDrawerViewAbsoluteGravity...若是右抽屉布局 // 则取抽屉布局的左边界作为裁剪区的右边界、设置原主布局的裁剪区域 } else { final int...通过clipRect()设置原主布局的显示范围 = 裁剪区域,使其仅在上图中的红框区域(即不阻碍抽屉布局的区域)显示 // 从而避免过度绘制 canvas.clipRect

    75420

    App之底部导航栏的设计

    先来看看app常用的导航模式有哪些:列表式、网格式、标签导航、抽屉式导航等。...如领英的设置页面 网格式与列表式类似,但排布更紧凑,显示也更直观,可在一页容纳更多选项,常见于一级页面,电商类app一级页面用的比较多,如淘宝的首页 标签式有顶部、底部两大类,底部应用的最广泛,因为底部比较方便大拇指点击...那么,有没有一种方式应用在一级页面,可以集合这些优点: 列表式的结构清晰明了, 网格式的紧凑、直观, 标签式底部导航的便利拇指操作, 抽屉式容纳更多选项,简洁界面。...“我的”模式是最常见的,满足了用户在各个功能之间的频繁切换。各个功能项是同等重要的。 “更多”模式是突出其他几项功能,把次要功能全部收入更多里。...开启中间功能键的例子: 闲鱼,拓展了标签数量 全民K歌,直接是新起一页,有网格式和列表式 喜马拉雅FM,也是新起一页,列表式 当然,案例只是参考,具体问题还是需要具体分析的,没有哪个模式是万能的,

    4.9K110

    CSS 块元素、内联元素、内联块元素

    块元素 块元素,也可以称为行元素,布局中常用的标签如:div、p、ul、li、h1~h6、dl、dt、dd等等都是块元素,它在布局中的行为: 支持全部的样式 如果没有设置宽度,默认的宽度为父级宽度100%...内联元素 内联元素,也可以称为行内元素,布局中常用的标签如:a、span、em、b、strong、i等等都是内联元素,它们在布局中的行为: 支持部分样式(不支持宽、高、margin上下、padding上下...) 宽高由内容决定 盒子并在一行 代码换行,盒子之间会产生间距 子元素是内联元素,父元素可以用text-align属性设置子元素水平对齐方式 ---- 下面代码演示如下: ?...可以从上图看出,行内元素span就算设置了width和height都是没用的。 但是从上面看出,每个span之间还是有间距的,那么该怎么做呢? ?...inline-block 元素以内联块元素显示 练习 请制作图中所示的菜单: ?

    3.9K20

    ToB系统页面跳转对比分析

    一、综述 前言 在 ToB 系统中,跳转场景的合理分类和设计对用户体验至关重要。不同的跳转方式(如当前页刷新或新开标签页)直接到影响用户的操作效率和系统性能。...在需要新开多个标签页的场景中,需要考虑浏览器的性能表现和用户设备的资源消耗。可以通过优化加载速度、减少页面资源占用等方式来提升用户体验。...通过完善的业务规则和使用逻辑,灵活地结合用户行为分析和个性化设置,有助于提升系统的整体用户体验。在实际应用中,还需时刻关注系统性能,确保在多标签页和多终端跳转的情况下,依然能保持流畅的用户体验。...二级域名跳转 跳转目的与用户意图:用户通常在同一组织的不同子系统之间切换,处理不同的业务需求。 用户角色与权限:每个二级域名子系统可能对应不同的用户角色和权限管理,需要确保用户身份和数据的一致性。...抽屉 一般从右侧划出抽屉浮层,来承载内容 优点:在当前页面出现的抽屉浮层,可以避免页面频繁跳转、以及频繁返回带来的页面刷新导致用户效率下降的问题 缺点:会遮挡一部分上文内容,无法看全;且抽屉宽度有限

    11300

    如何看懂常用原理图符号、如何阅读原理图

    具有多个投掷的开关,如下面的SPDT和SP3T,为执行器增加了更多的可接触点。 ? 具有多个极的开关通常具有多个相似的开关,其中虚线与中间致动器相交。 ?...如您所见,这些组件的大小和引脚数量差异很大。 由于IC具有这样的通用电路符号,因此名称,值和标签变得非常重要。每个IC应具有精确识别芯片名称的值。...元件名称有助于我们参考原理图中的特定点。 名称的前缀非常标准化。对于某些组件,如电阻器,前缀只是组件的第一个字母。其他名称前缀不是那么直接;例如,电感器是L(因为电流已经占据了i)。...3.1、网络,节点和标签 原理图网络告诉您组件如何在电路中连接在一起。网络表示为组件终端之间的线。有时(但并非总是)它们是一种独特的颜色,如本原理图中的绿线: ?...类似的电压节点-如GND,5V和3.3V-都连接到它们的对应部分,即使它们之间没有电线。 接地电压节点特别有用,因为许多组件需要接地。

    3.9K31

    透过现象看本质,图解支持向量机

    图 2:画一条线,作为将正类标签和负类标签分割开来的「规则」。现在,我们可以使用该规则标注每个黄色点的类别。 然而,这条线并非唯一。有很多条紫色线可以将绿色点和红色点完美分割(见下图)。...随着下图中紫色线的移动,某些黄色点就显得很微妙了(它们处于紫色线的不同侧,因此它们的类别取决于你选择使用哪条紫色线)。 ? 图 3:将红色点和绿色点完美分割的线有很多条。那么我们应该选择哪一条呢?...现在,考虑两个随机点 B 和 C(分别是图中绿色点和橙色点)。将 OB 或 OC 与单位向量 w 相乘,分别得到三角形 OAB 和 OAC 的底。 在这两种情况中,OA 为 -b。...那么,对于任意给定分割线,所有点均具备间距(如果点被分割线正确分类,则间距为正,反之则间距为负)。我们想获取将正类和负类完美分割的线。也就是说,间距越大越好,即使是对于邻近界限(分割平面)的点。...其中 x_i 表示特征空间中的位置向量,t_i 表示标签:1 为正类,-1 为负类。 所有点中的最小间距为: ? 公式 1:所有点中的最小间距。 我们想让 (w,b) 最大化上述最小间距。

    54610

    iOS 9人机界面指南(四):UI元素(下)- 腾讯ISUX

    一般来说,你会在一个表格视图中使用详情展开按钮来让用户知道更多关于这个列表项的信息。当然你也可以将这个按钮用在其它类型的视图中来为用户展示更多与特定项目相关的信息和功能。...API注释 想要了解如何在代码中定义标签,可以参考UILabel Class Reference....当视图数量超过页面宽度可承载的氛围时,点的大小和间距并不会因此变小(如果需要显示的点超过一定数量,系统会把它截断) 默认情况下不支持视图之间导航;你必须实现视图到视图之间的导航并适当地更新页面控件状态...填充轨道左边缘最小值之间到Thumb之间的部分 使用滑块来让用户精准地选择自己想要的值,或者控制当前的进程。...但在某些特定的内容区域内,为按钮描边或者添加背景颜色,让用户迅速地把注意力放到按钮上,也是必要的。Value 2的布局中,文本和副标题中间的垂直间距会让用户专注于副标题的第一个单词。

    13.2K30

    透过现象看本质,图解支持向量机

    图 2:画一条线,作为将正类标签和负类标签分割开来的「规则」。现在,我们可以使用该规则标注每个黄色点的类别。 然而,这条线并非唯一。有很多条紫色线可以将绿色点和红色点完美分割(见下图)。...随着下图中紫色线的移动,某些黄色点就显得很微妙了(它们处于紫色线的不同侧,因此它们的类别取决于你选择使用哪条紫色线)。 ? 图 3:将红色点和绿色点完美分割的线有很多条。那么我们应该选择哪一条呢?...现在,考虑两个随机点 B 和 C(分别是图中绿色点和橙色点)。将 OB 或 OC 与单位向量 w 相乘,分别得到三角形 OAB 和 OAC 的底。 在这两种情况中,OA 为 -b。...那么,对于任意给定分割线,所有点均具备间距(如果点被分割线正确分类,则间距为正,反之则间距为负)。我们想获取将正类和负类完美分割的线。也就是说,间距越大越好,即使是对于邻近界限(分割平面)的点。...其中 x_i 表示特征空间中的位置向量,t_i 表示标签:1 为正类,-1 为负类。 所有点中的最小间距为: ? 公式 1:所有点中的最小间距。 我们想让 (w,b) 最大化上述最小间距。

    48820

    我以前一直没有真正理解支持向量机,直到我画了一张图!

    图 2:画一条线,作为将正类标签和负类标签分割开来的「规则」。现在,我们可以使用该规则标注每个黄色点的类别。 然而,这条线并非唯一。有很多条紫色线可以将绿色点和红色点完美分割(见下图)。...随着下图中紫色线的移动,某些黄色点就显得很微妙了(它们处于紫色线的不同侧,因此它们的类别取决于你选择使用哪条紫色线)。 图 3:将红色点和绿色点完美分割的线有很多条。那么我们应该选择哪一条呢?...现在每次挪动一小步,我们来看看穿过原点的线(如 x 轴)。如下图所示,只需将 x 轴旋转一定角度,就可以得到这些线。 图 4:旋转 x 轴可以得到穿过原点的任意线。...现在,考虑两个随机点 B 和 C(分别是图中绿色点和橙色点)。将 OB 或 OC 与单位向量 w 相乘,分别得到三角形 OAB 和 OAC 的底。 在这两种情况中,OA 为 -b。...其中 x_i 表示特征空间中的位置向量,t_i 表示标签:1 为正类,-1 为负类。 所有点中的最小间距为: 公式 1:所有点中的最小间距。 我们想让 (w,b) 最大化上述最小间距。

    41740

    Android5.0和6.0之后新增的控件说明

    Android自5.0后增加了不少新控件,帮助开发者实现了更酷更炫的UI效果。...为此,博主初步整理了Android在5.0和6.0之后的新增控件,及其对应的说明博文,给大家提供一个可资学习和借鉴的索引。...使用v4控件唯一需要注意的地方,是布局文件中要引用完整路径的控件名称,如抽屉布局android.support.v4.widget.DrawerLayout、下拉刷新布局android.support.v4...这部分控件数量最多,实现的界面特效最丰富,而且互相之间存在依赖关系,如design库依赖于appcompat-v7库,部分design控件如NavigationView还依赖于recyclerview-v7...Android5.0和6.0之后补充了这么多新控件,自然有部分老控件变过时了,下面就列举部分新旧控件的替代关系: Toolbar:替代ActionBar RecyclerView:替代ListView和

    1.3K20
    领券