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

最新iOS设计规范三|3大界面要素:(Bars)

UI Kit提供界面组件有三类:(Bars),视图(Views),控件(Controls)。 ?...导航控件 避免在导航上挤满太多控件。通常,导航最多只能包含视图的当前标题,后退按钮以及一个用于管理视图内容控件。如果在导航中使用分段控件,则该不应包含标题或分段控件以外任何控件。...例如,“邮件”使用更简洁术语(例如“标记”和“草稿”)每个邮箱标题中省略了“消息”一词。 不要在侧边中显示超过两个层次层次结构。...模态视图例外。因为模态视图为人们提供了一种单独体验,使他们在完成后便会被解雇,所以这不是应用程序整体导航一部分。 选项卡功能不可用时,请勿删除或禁用该选项卡。...例如,如果iOS设备上没有歌曲,则“音乐”应用中“立即收听”选项卡说明如何下载歌曲。 始终在附加视图中切换上下文。

9.8K10

Cocoa编程中视图控制器视图类详解

还为标准系统行为进行响应。语法上 说,UIViewController是视图控制器父类。视图控制器类是没有可视化表示抽象类,只有它管理视图才提供可视画布。记住:1....使用pushViewController: animated:可推入一个新控制器,从而增加新导航栈。(记住:导航控制器不添加一个视图进去,这个导航是没有意义!)...UITabBarController类       选项卡类允许用户在多个视图控制器之间移动并在屏幕底部可定制该。...或其他任何类型视图控制器),并通过设置viewControllers属性将其添加到选项卡,使每个选项卡对应一个试图控制器。...• –viewDidLoad:当加载控制器视图内存时,该方法被调用。

5K50
您找到你想要的搜索结果了吗?
是的
没有找到

一步一步,开始上手Mac 开发(一)

这是因为你并没有MasterViewController 添加到主窗口(main window),这一步,需要在AppDelegate中进行。...现在Application Delegate 已经拥有了MasterViewController 属性,但是这并不能显示(被view controller管理视图应用程序屏幕上,我们还需要通过实例化这个属性来创建一个新...使用initWithNibName:方法nib(就是我们创建控制器Xib)文件中创建了一个新view Controller。 2....控制view 添加到主窗口容器视图(contentView)中。 3. 设置控制器view大小与主窗口相等。...AppDelegate.m文件 运行程序,确保上面我们做设置没有错误。为了能够显示需要Bug 列表,我们要让table view 模型中获取数据。

4K40

iOS屏幕旋转及其基本适配方法

我们首先有个大致了解,控制屏幕旋转优先级为:工程Target属性配置(全局权限) = Appdelegate&&Window > 根视图控制器> 普通视图控制器。...3.Appdelegate&&Window中设置 正常情况下,我们AppAppdelegate中启动,而Appdelegate所持有唯一Window对象是全局,所以在Appdelegate文件中设置屏幕旋转也是全局有效...当然,在一般情况下,我们项目都是用UITabbarViewController作为Window视图控制器,然后管理着若干个导航控制器UINavigationBarController,再由导航控制器去管理普通视图控制器...方法2: 另辟蹊径,使用模态视图 使用模态视图可以不受这种根视图控制器优先级限制。这个也很容易理解,模态弹出视图控制器是隔离出来,不受根视图控制影响。...界面A界面B中,如果我们使用第五节中方法1会遇到无法显示默认横屏情况,因为没有旋转设备,shouldAutorotate就没被调用,也就没法显示我们需要横屏。

8.9K60

【iOS 开发】iOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)

面板, 然后删除 Main Interface 中 Main 选项; (2) 创建 xib 界面设计 文件 创建 xib 文件流程 :  -- 选择文件类型 : 菜单选择 File -> New...灰色箭头作用 :  -- 作用 : 箭头表示 UI 控制器之间切换关系, 箭头指向需要加载 视图控制器; -- 移动箭头 : 视图中只有一个 UI 控制器, 移动箭头始终指向唯一 一个 UI 控制器...] > 0){ // 集合中最后一个 UILabel 控件布局中删除 [[self.labels lastObject] removeFromSuperview];...// UILabel 控件集合中删除 [self.labels removeLastObject]; // y 坐标自减, 用于添加控件使用...IOS 图标设置 IOS 图片设置 : 直接文件目录图片拖动到 Xcode 相应设置中. -- 设置图标 : 在项目文件视图中, 点击 Images.xcassets, 选中左侧 AppIcon

4.8K30

iOS导航使用总结

导航视图层级图 图中可以看出,导航底部分割线是一个UIImageView对象,而且高度只有0.5,所以我们可以据此获取到导航底部分割线对象,在一个视图控制器中实现此需求,代码如下: #import...,用于优化滑动类视图(继承于UIScrollView视图)在视图控制里显示: iOS系统导航UINavigationBar与标签UITabBar默认都是半透明模糊效果,在这种情况下系统会对视图控制器...UI布局进行优化:视图控制器里面第一个被添加进去视图是滑动类视图,并且其Frame是整个屏幕大小时,系统会自动调整其contenInset,以保证滑动视图内容不被UINavigationBar与UITabBar...,默认值是UIRectEdgeAll,即:当前视图控制器里各种UI控件会忽略导航和标签存在,布局时若设置其原点设置为(0,0),视图会延伸显示导航下面被覆盖。...,那么视图控制器控件就会默认(0,64)开始布局了,设置导航不透明方法如下: self.navigationController.navigationBar.translucent= NO;

3.1K20

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

状态: 是透明 始终固定在整个屏幕上边缘 API注释 你可以全应用状态风格设计成统一,或者给不同视图控制器定义不同状态风格。...若觉得标题冗余,你也可以标题留空。举个例子,备忘录导航中就没有当前备忘录标题,因为备忘录第一行就已经提供了所有用户需要内容。 ? 考虑在应用最高层级导航中放置一个分段控件。...可以在工具里放置分段控件以方便用户快速切换当前内容不同视图或模式。在工具中提供应用全局任务或者模式分段控件是不恰当,因为工具所有操作都应当是针对当前屏幕和视图。...API注释 想要了解如何在代码中定义活动,请参考UI Activity Class Reference.想要了解如何活动视图控制器整合到你应用中,请参考Activity View Controller...集合视图: 可包含装饰视图,以视觉上区分项子集或者提供装饰性项目,例如自定义背景。 布局切换时支持自定义转场动画。(默认情况下,当用户导入、移动或者删除时候,会出现系统默认动画效果。)

10.1K51

如何解决Xcode中SIGABRT错误

这是发生了什么: 您在Interface Builder中创建了一个新视图控制器,并使用一些UI元素(例如按钮和标签)对其进行了设置 您可以通过使用插座属性这些UI元素连接至代码,这将在视图控制器属性与...Interface Builder中UI元素之间建立连接 有一次您更改了初始插座属性名称,并且您应用因SIGABRT错误而开始崩溃 当您使用Interface Builder创建视图控制器时,您应用程序运行时...(大致而言),您应用程序将使用XIB文件生成视图控制器UI。...此时,它将还将XIB插座连接到视图控制器属性。 如果您更改了插座属性名称,则您应用程序找不到它。因此,它将引发异常。导致SIGABRT错误原因是未处理该异常。...iOS使用一种称为键值编码机制来检查视图控制器具有的属性,因此它可以使用这些属性来引用其基于XIB创建UI元素。 您现在如何解决该错误?

5.8K20

Mac 开发之 做一个JSON转模型属性小公举

由于窗口有两个水平方向文本视图,因此把窗口最小初始化size设置为(900,323),这样整个界面看起来是一个水平长方形,便于操作和阅读 设置window最小size 3....在StoryBoard中设置视图controller为ViewController,这样我们就可以通过ViewController类来管理控制器和view了 设置视图控制器类型ViewController...选中ViewController.m文件,进行视图初始化设置 初始化设置 这里有个细节需要注意: 在Mac OSX中,使用NSTextView控件进行文本输入时,系统会自动英文双引号变为中文双引号...实现功能代码 部分代码截图 全部代码可以从前文项目地址下载,这里贴出需要说明部分代码,在解析字符串时,我们常常获取Json内容是网页中拷贝,因此除了必要去除空白字符,回车,换行和制表符之外...,这里就简单完成了这个小工具,继续学习,可以给这个工具添加一个状态按钮(可以参考前面的文章),也许会用起来更方便哦..

1K20

iOS-UIWindow详解

iOS程序启动完毕后,创建第一个视图控件就是UIWindow,接着创建控制器View,最后控制器View添加到UIWindow上,于是控制器View就显示在屏幕上了。...一个iOS程序之所以能显示在屏幕上,完全是因为它有UIWindow,也就是说,没有UIWindow就看不到任何UI界面。 状态和键盘都是特殊UIWindow。...那么UIWindow是如何View显示屏幕上呢 这里有三个重要对象UIScreen,UIWindow,UIView。...系统在加载storyboard时候会做以下三件事情 创建窗口 加载mian.storyboard 并实例化view controller 分配新视图控制器窗口root viewcontroller...3.通过storyboard加载控制器 刚才我们提到过系统在加载storyboard时候会做以下三件事情 创建窗口 加载mian.storyboard 并实例化view controller 分配新视图控制器窗口

1.9K40

Swift-MVVM 简单演练(三)

= nil并且用户又一次进行了网络请求时候提示用户,并且登录控制器展现出来。...比如,一开始没有登录时候,运行程序,会出现登录和注册按钮。当我们点击登录按钮时候,我们期望立刻弹出登录控制器。 但是我们刚才写代码,真的有影响这里了。...下面我们想办法测试一下 存储用户账户相关文件删除 然后运行程序,就直接到登录界面,然后点击登录按钮发现总是需要等待2秒钟,我们找到之前延迟两秒钟地方处理一下。...使用layoutIfNeeded 函数让自动布局系统,提前更新当前收集约束变化 但是我们这里不是控制器,只是一个View,里面并没有viewDidAppear方法。我们就要找到一个类似的办法。...,所以开发时,不能在这个方法里面处理UI,而且如果是xib开发的话,你打印视图的话,结果都是nil

2.5K30

基础篇-UIApplication、UIWindow以及程序启动流程看我就够了

iOS程序启动完毕后,创建第一个视图控件就是UIWindow,接着创建控制器View,最后控制器View添加到UIWindow上,于是控制器View就显示在屏幕上了。...一个iOS程序之所以能显示在屏幕上,完全是因为它有UIWindow,也就是说,没有UIWindow就看不到任何UI界面。 状态和键盘都是特殊UIWindow。...return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); } } 这个默认iOS程序就是...分配新视图控制器窗口root viewcontroller,然后使窗口显在示屏幕上。...分配新视图控制器窗口root viewcontroller,然后使窗口显在示屏幕上。 四大对象关系图和程序启动流程图 ? ?

1.5K20

iOS开发常用之网络

该项目通过三种形式展示页面之间切换,比如导航多个选项卡切换,页面左右两端箭头指示切换,以及使用分段控件。...FoldingTabBar.iOS - 可折叠标签和标签控制器。...所以想支持iOS8.0,支持自定义,支持等宽排列,支持左向右排列。 类似美团下拉菜单 - 类似美团下拉菜单,源码推荐说明。...ZTPageController - 模仿网易新闻和其他新闻样式做一个菜单中有各自控制器,其中有4中展示样式'网易风格''搜狐风格''腾讯风格1''网易style2'。...仿LOL滚动视图 - 仿LOL滚动视图。 答案选择切换页 - scrollview和tableview封装在一起,在初始时候简单数据带上,就可以一页一页左右来回滑动。

23.5K10

Mac开发基础练习:制作一个状态(NSStatusBar)上App(二)

我们在练习(一)中完成了状态图标点击,弹出内容视图效果,但是项目看起来还有些体验不是非常符合用户习惯,(例如点击应用之外其他地方,popover 并没有自动消失)我们继续来添加和完善一些用户功能,...添加按钮响应代码 再次运行应用,如果没有错误,点击状态图标,界面大概样子应该入下图: ? 应用运行效果 点击退出按钮,你会发现应用结束进程并退出。...1.4 选中Main.storyboard文件,项目中删除,并清空工程配置,入下图: ?...像iOS中一样,应用启动加载完成后,设置UIAppDelegate这个方法-applicationDidFinishLaunching:开始,如果我们在上面的工程中对这个方法设置调试断点,你会发现应用启动后...main.m文件实现代码 1.6 因为我们去除了window,因此ViewController对我们来说已经没有价值了,我们只需要把之前在ViewController中写代码,放置AppDelegate.m

1.3K30

六个方向关于iOS100个面试题,你都会了吗?

AppDelegate扮演着什么样角色? 请解释一下NSUserDefaults。就你而言,你会如何在磁盘中对数组对象进行序列化? 你会如何储存用户认证信息? 请问何为Keychain服务?...iOS UI图像储存类型是什么? 请描述一下Storyboard和标准NIB文件差别。 设备状态(Device Status Bar)是什么?高度如何?是否透明?...在手机通话或者导航状态下,它是如何显示? 导航(Navigation Bar)是什么?能否拿出你iPhone,指出你下载哪些应用运用了导航?...选项卡(Tab Bar)和工具(Toolbar)分别是什么?两者之间有何共同点和不同点? 表视图(Table View)是什么?集合视图(Collection View)又是什么?...选取器视图(Picker View)适合存放哪类内容? 应该在什么情况下使用标签、文本域和文本视图分段控件(Segmented Control)作用是什么?

3.6K50

一张图解析 FastAdmin 中表格列表

TAB 过滤选项卡 3. 通用搜索 4. 工具按钮 5. 动态渲染统计信息 6. 快速搜索 7. 浏览模式、显示隐藏列、导出、通用搜索 9. 复选框 10. 分类名称(关联查询) 11....TAB 过滤选项卡 ---- 在一键生成 CRUD 时,表中如果存在 status 字段且为 enum 类型,则会生成相应 TAB 过滤选项卡 php think crud -t test 如果需要生成其它字段过滤选项卡...工具按钮 ---- 一键生成菜单时会自动生成 添加、编辑、删除、更多按钮 HTML,这些按钮会根据用户是否拥有的权限来决定显示或隐藏 我们可在控制器对应视图文件 index.html 中任意添加、...修改 index.html 视图 (一般放在工具) <a href="javascript:;" class="btn btn-default" style="font-size:14px;color...快速搜索 ---- 快速搜索查询条件: where 字段 like '%关键词%' 快速搜索在键入关键词时<em>将</em>实时<em>从</em>服务端搜索数据,当数据表数据较大时,建议关闭此功能(在表格初始化时关闭) 默认只会搜索主键

4.8K10

iOS四大对象之UIWindow及四大对象之间关系1. UIWindow使用纯代码加载根控制器2. UIWindow创建过程3. 四大对象之间关系

UIWindow/使用纯代码加载根控制器 UIWindow是一种特殊UIView,通常在一个app中只会有一个UIWindow -iOS程序启动完毕后,创建第一个视图控件就是UIWindow,接着创建控制器...view,最后控制器view添加到UIWindow上,于是控制器view就显示在屏幕上了 创建第一个对象是:UIApplication 一个iOS程序之所以能显示屏幕上,完全是因为它有UIWindow...UIViewController *mainController = [[UIViewController alloc] init]; // 给窗口指定根视图控制器 window.rootViewController...所以需要在AppDelegate.h里面创建一个强引用属性,定义window。然后赋值。...:view属性 第一个创建对象是UIApplication UIApplication绑定一个AppDelegate对象 AppDelegate对象中有一个window属性(UIWindow)

1.7K30
领券