在iOS 13及更高版本中,可以通过删除导航栏的阴影来隐藏导航栏的底部边框(当滑动内容区域时,边框会自动重新出现)。无边框样式在大标题导航栏中效果很好,因为它增强了标题和内容之间的联系感。...三、侧边栏(Sidbars) 侧边栏在iPhone上使用较少,更多的用在iPad。它提供了应用程序的导航,在侧边栏中选择一项可以使人们导航到特定的内容。例如,“邮件”中的边栏显示所有邮箱的列表。...允许用户隐藏侧边栏以为其内容创造更多空间,并使用内置的边缘滑动手势再次显示侧边栏。避免在默认情况下隐藏边栏。 侧边栏中的标题要保持简洁明了。省略不必要和多余的词。...通常,在iPhone上使用三到五个标签;如果需要,在iPad上可以接受更多一些。 当人们导航到您应用中的其他区域时,请不要隐藏标签栏。标签栏可为您的应用启用全局导航,因此它在任何地方都应保持可见。...tips:了解选项卡栏和工具栏之间的区别很重要,因为两种类型的栏都出现在应用程序屏幕的底部。标签栏可让人们在应用程序的不同部分之间切换,例如“时钟”应用程序中的“警报”,“秒表”和“计时器”选项卡。
iPhone X iPhone X 拥有一个宽大的而且高分辨率的屏幕,从外观看是圆角的,并且扩展到屏幕的边缘。这提供了前所未有的沉浸式体验,可以使我们体验更加丰富的内容。 ?...所有的应用程序都应遵循 UIKit 中定义的安全区域和布局边距,这些区域可以根据设备和上下文进行适当的填充。安全区域还能够防止内容把状态栏、导航栏、工具栏和标签栏覆盖掉。 注意状态栏的高度。...但是请注意,当背景任务(例如录音和位置跟踪)处于活动状态时,iPhoneX 上的状态栏并不会改变高度。 如果你的应用程序对隐藏状态栏进行了隐藏,那么请重新考虑在 iPhone X 上的设计。...iPhone 上的显示高度为 4.7 英寸,并且它的屏幕上提供了更多的垂直空间内容,状态栏占据了你的应用程序本来可以使用的屏幕区域,状态栏还显示了对人们有用的信息,只有在交换附加值时候才能被隐藏。...不要隐藏设备的圆角和传感器外壳,也不要通过在屏幕顶部和底部放置黑色条的方式来突出主屏幕的指示器。不要使用类似括号、边框、形状或文字之类的视觉装饰来引起人们对这些区域的注意。
iPhone X iPhone X包括一个大型,高分辨率,圆形的边缘到边缘的显示器,提供了一个沉浸式,内容丰富的体验,从未像以前那样。...请注意,当背景任务(如录音和位置跟踪)处于活动状态时,iPhone X上的状态栏不会改变高度。 如果您的应用程序目前隐藏状态栏,请重新考虑iPhone X上的决定。...请勿尝试隐藏设备的圆角,传感器外壳或通过在屏幕顶部和底部放置黑色条来访问主屏幕的指示器。不要使用像括号,边框,形状或教学文字等视觉装饰,也要特别注意这些区域。 允许自动隐藏指示灯,以便轻松访问主屏幕。...手势 iPhone X上的显示屏使用屏幕边缘手势来访问主屏幕,应用程序切换器,通知中心和控制中心。 避免干扰系统范围的屏幕边缘手势。人们依靠这些手势在每个应用程序中工作。...您的应用程序不能影响这些按钮,因此避免在键盘中重复这些按钮造成混乱。请参阅自定义键盘。 资源 下载Photoshop和Sketch 资源中的 iPhone X UI设计模板。 原文链接
一、屏幕尺寸 1、规格: iPhone X 的屏幕宽度同 iPhone 6、iPhone 6s、iPhone 7 和 iPhone 8 的 4.7 英寸屏幕宽度相同,即 375pt。... 2、提供全屏用户体验,这里主要是指列表要延展到屏幕底部。  3、避免将可交互控件放在屏幕底部或者屏幕圆角区域,防止视觉遮挡和系统边缘手势冲突。...解决方案:系统的UIToolBar会自动扩展背景颜色到底部,可以让Custombar继承UIToolBar,或者直接放置一个ToolBar的在底部当做背景也是可以的。注意高度不能超过48,否则失效。...4、横屏交互适配 主要涉及到视频播放的边缘交互按钮。 内容 内容只需放置在SafeArea之内。同样底部如果没有固定可交互组件也要延伸到屏幕底部。...有时候你的App需要控制从状态栏下拉或者底部栏上滑,这个会跟系统的下拉通知中心手势和上滑控制中心手势冲突。
Tab Bars是半透明的,可以具有背景色调,在所有屏幕方向上保持相同的高度,并且在显示键盘时隐藏。 Tab Bars可能包含任意数量的tabs,但可见tabs的数量因装置大小和方向而异。...选项卡太少也可能成为问题,因为它可能会使您的界面看起来不连贯。一般来说,在iPhone上使用三到五个tabs。 iPad可以有更多。...TIP:理解 tab bar 和 toolbar 之间的区别很重要,因为这两种类型都出现在app屏幕的底部。 ...tab bar 可让用户在app的不同部分之间快速切换,例如时钟应用中的闹钟,秒表和计时器tab。Toolbar 包含用于执行与当前上下文相关的操作的按钮,如创建项目,删除项目,添加注释或拍摄照片。...标签栏和工具栏永远不会同时出现在同一个视图中。
每个iPhone用户界面都是由显示在UIWindow(这其实也是个特殊的UIView)内的众多UIView及其专门化子类构建的。...)和栏标题(title)、用于显示标题的视图(titleView),以及用于从当前视图向后导航的Back按钮(backBarButtonItem)和隐藏后退按钮(hidesBackButton)。...UITabBarController类 选项卡类允许用户在多个视图控制器之间移动并在屏幕的底部可定制该栏。...或其他任何类型的视图控制器),并通过设置栏的viewControllers属性将其添加到选项卡栏,使每个选项卡对应一个试图控制器。...• navigationItem:导航子项 • editing: 是否处理编辑状态 • hidesBottomBarWhenPushed: 入栈时隐藏底部栏 • toolbarItems: 工具栏子项集
图1.4 “我的Tab”表现 在图1.1中乍一看表现还不错,可是在图1.2中,下拉刷新之后,我们的导航栏还是被刘海挡住了。搜索也中枪,搜索首页没有办法取消,“热门搜索区域”也多出来一块儿空白。...iPhone X 和 iPhone 8 的宽度一致,在垂直方向上多了145pt,这就意味着首页可以展示更多的内容,多出来的这20%的垂直空间,也许可以挂上更高价值的运营位。 ?...图2.5 iPhone X 的状态栏高度 "如果你的 App 是隐藏 StatusBar 的,建议重新考虑。...iPhone X 为用户在垂直空间上提供了更多展示余地,且状态栏中也包含了用户需要知道的信息,除非能通过隐藏状态栏带给用户额外的价值,否则苹果建议大家将状态栏还给用户。"...② 搜索页面输入框的位置发生了偏移,这是因为 iOS 11 的导航栏的视图层级结构发生了变化,和 iPhone X 的并无直接关系。iOS 11 导航栏的视图层级关系如下: ?
2.避免在屏幕底部设置手势交互 由于Home键现在已经被放置在底部的细条交互式控件所取代,除非非常必要,否则不要轻易设置手势交互,它可能会遮挡住Home提示条。...建议您可以考虑其他滑动手势和任何能与缺口适配的界面。 ? 3. 显示完美的状态栏 与上一代iPhone相比iPhone X状态栏的垂直高度增加了一倍,从22pt增加到44pt。...因此,您最好将背景扩展到显示屏的边缘(包括状态栏),以及垂直可滚动的区域。...建议将导航栏的颜色延伸到状态栏的背景,否则看起来会很奇怪,并且App在试图将它与传感器外壳进行手动混合时可能会遇到一些奇怪的情况。 用户界面的“全屏”体验是非常重要的,让用户不再受屏幕边缘的干扰。...以下是苹果为设计师定义安全区域的方式。(如下图示) ? 如果您的App应用平台标准组件和自动布局,您的用户界面也应适当地缩放以适应iPhone X屏幕。 ? PS:只能隐藏状态栏以换取附加值。
除非开发者明确要求视图突破安全区域的限制,否则 SwfitUI 将尽力确保开发者创建的视图都被布局到安全区域当中。SwiftUI 同时提供了一些方法和工具让开发者对安全区域有所控制。...本文将探讨如何在 SwiftUI 中获取 SafeAreaInsets、将视图绘制到安全区域之外、修改视图的安全区域等内容。...iOS 应用时,经常会碰到需要让视图可以扩展到非安全区域的情况。...// 只扩展到底部.ignoresSafeArea(edges: .bottom) // 扩展到顶部和底部.ignoresSafeArea(edges: [.bottom, .trailing]) //...SafeAreaRegions 定义了三种安全区域划分: •container由设备和用户界面内的容器所定义的安全区域,包括诸如顶部和底部栏等元素。
粘性沉浸模式: 用户可以通过在系统栏上滑动来暂时退出沉浸模式 这里我们向您进一步解释一下流程图里的内容。 问题 1: 应用需要隐藏导航栏或状态栏吗?...流程图里的第一个问题,询问您应用的主要使用场景是否需要隐藏导航和/或状态栏。所谓 "隐藏",是指让它们根本不可见。这并不意味着让您的应用实现从边到边的全屏状态。...(包括在后退和返回主屏按钮区域滑动) 不少游戏通常会在此处回答 "是",因为: 游戏屏幕上的控件往往非常靠近屏幕左/右边缘,或靠近屏幕底部。...在问题 3 中回答 "是" 的视图,是否需要用户在其上滑动或拖拽?...如果您的视图放置在一个可滚动操作的容器 (如 RecyclerView) 中,那么请这么理解这个问题: 该视图是否完全或大部分位于手势交互区域中?
设备屏幕尺寸和方向 iOS设备具有各种屏幕尺寸,可以纵向或横向使用。在iPhone X和iPad Pro等边对边设备中,显示屏的圆角与设备的整体尺寸非常匹配。...这些布局指南可确保根据设备和上下文进行适当的插入。安全区域还可以防止内容重叠在状态栏,导航栏,工具栏和选项卡栏上。系统提供的标准视图将自动采用安全区域布局指南。...确保背景延伸到显示器的边缘,并且垂直方向可以滚动的布局(如表和集合),一直延伸到底部。 避免在屏幕底部和角落放置交互式控件。...请注意,当诸如录音和位置跟踪之类的后台任务处于活动状态时,全屏iPhone上的状态栏不会更改高度。 如果你的APP当前隐藏状态栏,请重新考虑全屏iPhone的隐藏与否。...与旧款iPhone相比,全屏iPhone的内容垂直空间更大,状态栏占据了你APP可能根本无法充分利用的屏幕区域。状态栏还显示用户认为有用的信息。它只在可以换取附加价值的时候才隐藏起来。
应用程序结构和导航 Scaffold Appbar 上面两个在基本部件中已经讲过。 BottomNavigationBar ? 底部导航栏可轻松浏览并在单次点击之间在顶层视图之间切换。...一个显示在应用底部的材质小部件,用于在少量视图中进行选择,通常介于3到5之间。 底部导航栏由文本标签,图标或两者的多个项目组成,并放置在一块材料的顶部。 它提供了应用程序顶级视图之间的快速导航。...对于更大的屏幕,侧面导航可能更适合。 底部导航栏通常与Scaffold结合使用,在Scaffold.bottomNavigationBar参数中提供它。 底部导航栏的type会更改其条目的显示方式。...TabBarView 显示与当前选定选项卡相对应的部件的页面视图。 通常与TabBar结合使用。 ?...WidgetsApp 一个便利的类,它包装了应用程序通常需要的许多小部件。 ? Drawer Material Design面板,从展示台的边缘水平滑动,以在应用程序中显示导航链接。 ?
,因为如果页面底部有按钮的话,就会被胡子给挡住,以往我们兼容过 iphone x 的下巴,但现在回想起来不是正确的做法。...在 safari 往上段滑动一小段距离,可以看到当 safari 的底部操作栏出现后,页面依然会保留着距底部的 34px 空白。...是的,但你见过 iphone x+ 有 ios 11以下的吗? 所以我们可以愉快的搞下去。 开始之前我们先了解什么是 safe area,简单的来说就是除了刘海和胡子以外的区域为安全区域: ?...否则 calc 会计算出一个不合法的值,则本句声明不会生效。这样在不支持 env 设备中也可以达到兼容的目的。 目前到这,在横屏场景下左侧的内容就不会被刘海遮挡住了: ?...在 safari 中,页面往上稍滑动一点,出现 safari 的操作栏后,底部按钮依然会紧贴着操作栏,非常有灵性: ? 处理起来一切都显得 简洁优雅细腻。
目录: 一、设置导航栏样式 二、解决自定义导航栏返回按钮后侧滑不可用问题 三、隐藏导航栏底部的分割线 四、导航栏引起的布局问题 相关文章:iOS状态栏的使用总结 一、设置导航栏样式 设置导航栏的样式可分为全局设置与局部设置...; 1.全局设置 全局设置一般的都是在AppDelegate中设置,这样整个app都会生效,相关的代码与效果图如下: //1.设置导航栏背景颜色 [[UINavigationBar appearance...,就不需要触发滑动手势, return NO; } return YES; } @end 三、隐藏导航栏底部的分割线 隐藏导航底部分割线也是我们偶尔会遇到的开发需求,首先我们可以通过...导航栏视图层级图 从图中可以看出,导航栏的底部分割线是一个UIImageView对象,而且高度只有0.5,所以我们可以据此获取到导航栏的底部分割线对象,在一个视图控制器中实现此需求,代码如下: #import...也是视图控制器的布局属性,默认值是UIRectEdgeAll,即:当前视图控制器里各种UI控件会忽略导航栏和标签的存在,布局时若设置其原点设置为(0,0),视图会延伸显示到导航栏的下面被覆盖。
iPhone X尺寸说明 根据苹果iPhone X适配规范,iPhone X屏幕尺寸为375 x 812pt,宽度和iPhone 6/6s/7/8一样,但高度比它们高了145pt,如下图所示。...状态栏到底还要不要隐藏 在完成全屏化后我们得到的界面如下图所示。 [image.png] 由上图可知,状态栏展示内容其实非常少,而且不完整。...,当我们在全屏界面隐藏了状态栏之后,statusBarFrame获取到的size为0,可能会出现控件布局错乱,因此最稳妥的方法还是判断是否iPhone X返回一个常数,如下所示。...从刚才全屏化的界面中可以看到,界面底部多了一条黑条,我们将其称为Home Indicator,这是iPhone X新添加的虚拟按键,以替代原来的Home键,它支持的操作有上滑退至多任务界面,左滑和右滑切换当前程序...需要注意的坑 关于TabBar高度,在VC的viewWillAppear中获取到的是默认原始高度49,而到了viewDidAppear时获取到的高度为83,这就导致了在popVC时可能底部tabbar发生一个从下到上的跳动
但是为了比较,我这里给出一张苹果官方文档中,iPhone8之前的常规屏幕和刘海屏 Safe Area 区域的对比图。 ?...safe-area.png 很明显,在讨论适配之前,我们的页面一般有两种分类: 1、H5 页面使用原生 App 的 Navigation Bar 导航栏,此时,status bar 状态栏和导航栏都是原生控件...2、H5 页面在 iOS 中占据全屏页面,在这种情况下,除了要兼顾底部小黑条,我们还要处理页面上部跟 状态栏接触的部分,避免内容出现在状态栏上。...换句话说就是网页会扩展到整个屏幕。 看一页目前的页面效果: ? WX20200531-205514@2x.png 可以看到现在我们的测试页面已经铺满了整个屏幕。...WX20200531-205658@2x.png 可以看到页面的顶部,因为 safe-area-inset-top 避开了状态栏,而底部因为 safe-area-inset-bottom 避开了小黑条,
,因为如果页面底部有按钮的话,就会被胡子给挡住,以往我们兼容过 iphone x 的下巴,但现在回想起来不是正确的做法。...在 safari 往上段滑动一小段距离,可以看到当 safari 的底部操作栏出现后,页面依然会保留着距底部的 34px 空白。...点击这里了解更多关于 viewport-fit 关于 safe-area-inset-* 各种 iphone x 都是不规则形状,我们如何控制页面元素到安全区域呢?...在不支持env( )的浏览器中,会自动忽略这一样式规则,不影响网页正常的渲染。为了达到最大兼容目的,我们可以 constant( ) 和 env( ) 同时使用。...safari 中,页面往上稍滑动一点,出现 safari 的操作栏后,底部按钮依然会紧贴着操作栏,非常有灵性: 处理起来一切都显得 简洁优雅细腻。
过了好久,今天终于有时间总结一下适配iPhone X相关的坑,总的来说有两类坑,一个是导航栏+状态栏的高度发生了变化,一个是一些没有实现实现-tableView: viewForHeaderInSection...适配iPhone X的其他问题 适配iPhone X和Xcode 9的过程中,除了与导航栏相关的问题,还有一个问题经常出现,就是UITableView相关的问题。下面两个办法可以解决多数错位的问题。...iOS新增了个safeArea,原来的老代码中,规定子视图跟根子视图的关系的代码需要新增一个判断:当iOS 11时,需要改为子视图跟根子视图的安全区的关系。...这样就不会在iPhone X的底部虚拟home有任何控件干扰了。...home区,其它的视图tableView视图或者网页视图时可以放在底部虚拟home区中的。
在Finder中隐藏各种元素 Finder在其窗口中显示各种项目,如侧栏,工具栏,路径栏和状态栏。这些选项使您可以快速跳转到Mac上的各个位置。...路径栏显示在Finder窗口的底部,显示当前文件夹的完整路径。...有关: 在Mac上充分利用Finder的视图选项的精巧技巧 在Finder中添加和删除标签 标签使在Finder中查找相关文件变得更加容。您既可以添加新标签,也可以从Finder中删除现有标签。...要删除标签,请在列表中选择标签,然后单击底部的“删除(-)”图标。 选择出现在Finder侧栏中的内容 像标签一样,您可以自定义出现在Finder边栏中的项目。这使您可以在边栏中添加和删除项目。...要做到这一点: 单击顶部的Finder,然后选择偏好设置。 单击边栏选项卡。 在侧边栏中勾选您想要查看的项目。 取消勾选要从边栏中删除的项目。 更改是即时的,您无需单击任何按钮即可保存设置。
该项目通过三种形式展示页面之间的切换,比如导航栏上的多个选项卡切换,页面左右两端箭头指示切换,以及使用分段控件。...ASDayPicker - 适用于iOS(iPhone)的日期选择器(时间选择器),类似于Calendar app的周视图。 今天扩展 - 用纯代码构建一个Widget(今天扩展)。...DateRangePicker.swift - 可能是目前最好的OS X日期选择器,高扩展性,界面风格看起来很舒服,不过注意,是OS X开发专用。...侧滑与右滑返回手势 SloppySwiper - iOS系统自带的UINavigationController要7.0才支持,但不过该手势只能从屏幕左侧边缘识别,如果要扩大到整个屏幕范围怎么办?...ADo_GuideView - 转动的用户引导页(模仿网易bobo)因为没有从应用程序包里抓到@ 3x的图片,建议在iPhone5模拟器运行,保证效果〜(版本新特性,导航页,引导页)。
领取专属 10元无门槛券
手把手带您无忧上云