3 选中代码块 选择某个代码块的左侧括号{,然后双击。 4 Canvas切换 Canvas 暂停时,按option + command + P恢复预览。...5 模拟器分屏 选中模拟器,进入 Window 菜单,选择 Tile Window To Right Of Screen,然后选择左边的 Xcode 进行屏幕空间分割调整,这样模拟器就一直在右边显示。...也可以使用control + 2或control + 3可以将这些文件显示为菜单进行浏览。...18 视图测试 在 View debugging 时,选择某个 UIView,然后使用快捷键command + shift + D可以快速在左侧的调试导航器中定位该 UIView。...22 storyboard查看视图层次 在 storyboard 中,可以通过shift + 右击UIViewController或者control + shift + 单击UIViewController
创建项目 导航区的第三个菜单 Symbol navigator 替换为 Bookmark navigator。 导航区 调试区的菜单发生变化,并且输出的内容随着不同的级别拥有不同的背景色。...Archive.png 功能 Assets 中的创建的Image Set与Color Set可以生成类型安全的标识符,在程序中可以.标识符的形式访问。...image.png 代码支持添加 Bookmark,在某一行代码或者选中多行代码后右击,可以看到相应的添加菜单。可以在 Bookmark navigator 中查看添加的所有 Bookmark。...条件编译代码随着选择的条件会高亮显示对应条件的编译代码。 右击菜单 Show Quick Help 显示更加丰富的文档内容。...编辑时 Quick Actions 可以快捷访问对应内容的所有菜单,快捷键command + shift + A。 遇到多参数的方法时,可以通过键盘方向键 —> 显示所有可能的参数组合。
@brief 多媒体消息中包含的文件数据对象 * * @see UMShareObject */ @interface UMShareFileObject : UMShareObject /**...*)view animated:(BOOL)animated;//包括快速预览菜单、打印、复制 - (BOOL)presentOpenInMenuFromBarButtonItem:(UIBarButtonItem...*)item animated:(BOOL)animated;//不包括包括快速预览菜单 获取NSURL //方式1: NSString* filePath = [[NSBundle mainBundle...[documentController presentOptionsMenuFromRect:rect inView:self.view animated:YES];//包括快速预览菜单.../ [documentController presentOpenInMenuFromRect:rect inView:self.view animated:YES];//不包括包括快速预览菜单
它是一种立体触控技术,可感应不同的触控压力。通过该技术可以给 App 设置最多 4 个不同的 ShortcutItem(快捷操作菜单),实现方式分为静态和动态两种。...view.backgroundColor = .blue } } UIMenu UIMenu 在 iOS 13 中引入,可以很方便的创建程序菜单和上下文菜单。...UIDeferredMenuElement,允许异步地创建 UIMenu,可以动态配置菜单的内容。...(Context Menus),也是通过按压的方式触发,不同于 3D Touch(Haptic Touch),Context Menus 一般用于 App 内菜单的设置。...如果要启用上下文菜单,需要创建一个UIContextMenuInteraction并将其添加给某个触发的 UIView,然后指定 delegate,在代理方法创建 UIMenu 并返回UIContextMenuConfiguration
菜单中的每个可以触发操作的按钮,苹果称之为quick actions,我在此称之为快捷操作项。...---- 如上图所示,这是我在官方文档中截取的图片,上图中矩形菜单中的四个item就是我们所说的“quick action”译为:快速操作项。...确切的说,是系统默认最多显示4个,而不是字典的容量为4,你可以给这个字典数组赋值5个字典,但是最后只会显示前4个字典配置的快捷操作项。...如果我们为一个快捷操作项指定了子标题,那么系统就会以一行的形式显示子标题(也许仅仅是标题的一部分,后面跟着省略号)无论标题有多长。...Snip20160415_3.png trait collection 是视图控制器(UIViewController类或者其子类的实例)或者视图(UIView类或者其子类的实例)的属性,因为UIViewController
,开发者应该将切出的view移除,将切入的view加入到该view容器中。...-(void)animateTransition:(id)transitionContext; 在进行切换的时候将调用该方法,我们对于切换时的UIView的设置和动画都在这个方法中完成。...在现在的SDK中,如果当前的VC是被显示的话,这个消息会被直接转发到显示它的VC去。但是这并不是一个好的实现,违反了程序设计的哲学,也很容易掉到坑里,具体案例可以参看这篇文章的评论。 ...的信息,使用context的方法拿到它们的参照; 2.对于要呈现的VC,我们希望它从屏幕下方出现,因此将初始位置设置到屏幕下边缘; 3.将view添加到containerView中; ...我们在手势识别中只需要告诉这个类的实例当前的状态百分比如何,系统便根据这个百分比和我们之前设定的迁移方式为我们计算当前应该的UI渲染,十分方便。
动画预览 相关链接 WWDC 2013 session 218: Custom Transitions Using View Controllers 开扯 最近在朋友圈看到别人转发了一系列很帅的 iOS...我们只涉及第二种 UITabBarController 另外还有 Interactive view controller transitions 可交互过渡,例子就是在 NavigationController 的详细页面中从屏幕左侧滑入以返回时的那个动画...有两个方法需要实现 // 这个方法负责做真正的动画,输入参数是过渡的上下文,从哪个VC过渡到哪个VC这些东西都可以从它得到。...然后给这个 ShapeLayer 的 path 属性加动画,从半径为0变化到覆盖整个目标 VC 。...并且开始时的path设置为上面的start——位置在点击的tab上的一个半径为0的圆。 // 下文中就要给这个path加特技,让他变化到包含整个界面那么大。
触摸背景关闭虚拟键盘 (1) 修改 Custom Class 修改背景类别 : -- 修改原因 : 默认的背景控件时 UIView, 该控件没有 IBAction 事件, 因此需要将背景控件设置为...UIScrollView 属性简介 (1) UIScrollView 简介 UIScrollView 简介 : -- 显示内容多 : 可滚动控件, 可以使用手指拖动控件中的内容, 在其中可以显示多个屏幕的内容...将背景控件设置为 UIControl : 之前的 UIView 不能响应点击事件, 在身份检查器 面板将 Custom Class 由 UIView 修改为 UIControl; -- 2....将按钮设置到工具条中 : //将按钮放在集合中 NSArray * buttonArray = [NSArray arrayWithObjects:buttonItem, spaceItem...设置菜单附加按钮 : //设置菜单中的附加按钮 [menu setMenuItems:[NSArray arrayWithObject:delete]]; (2) 源码示例 源码示例
; (9) Highlighted 属性 Highlighted 属性 : -- 作用 : 为 UILabel 中的文本设置高亮显示, 前提 Behavior 属性的 Highlighted 属性勾选...: 左边显示 界面设计文件, 右边显示 UIViewController 类; -- 拖动控件到 UIViewController 中 : 按住 control 键, 将控件拖到 UIViewController.h...文件中 : 按住 control 键不放, 将按钮拖动到 UIViewController 中; -- 设置 IBAction 属性 : 在接下来弹出的对话框中的 Connection 列表设置 为...: 点击 界面设计文件中的 UIView 根控件, 使用 command + option + 3 打开身份检查器, 由身份检查器上可以看到 其 Custom Class 属性为 UIView, 因此该界面的根控件时...UIView; -- 创建自定义类 : 选择菜单中的 File -> New File -> Cocoa Touch -> Objective-C Class; -- OCFollowTouchView.h
UIView与UIViewController 初步印象 iOS 开发中,一个界面就是一个 UIViewController(视图控制器),界面上显示的内容就是 UIView(视图)。...UIView与UIViewController的关系 UIViewController 中默认有一个和屏幕一样大的 UIView,UIViewController 管理着它的生命周期。...所有放在界面上的 UI 控件都放在 UIViewController 的 UIView 之上,在 UIViewController 的代码中可以通过self.view属性获取它。...开发中的其他 UIView(及其子类)都放在该view上。 UIViewController中UIView的生命周期函数 viewDidLoad:View 完成内存加载。...UIView添加到UIViewController的View.png UIView的容器概念 UIView 中可以放其他的 UIView。 UIView 的层次关系(平级与包含)。
二、UIViewController进行模态跳转的转场 首先,使用CoreAnimation框架中的CATransition类也可以实现视图控制器的转场动画,前面的博客有过讨论,这里不再重复。...: //这个函数用来设置当执行present方法时 进行的转场动画 /* presented为要弹出的Controller presenting为当前的Controller source为源Contrller...,将present动画修改成了从右侧滑入,但是dismiss动画依然是默认的从下方划出。...下面我们来分析下transitionContext这个对象,这个对象实际上是一个转场上下文,使用它来进行动画的定义和执行: //容器视图 用来表现动画 @property(nonatomic, readonly...我们在使用系统的导航控制器时,右划返回效果对用户体验十分友好,我们下面就来试着将视图控制器的模态跳转设计成类似导航可交互的。
,可以简单理解为显示在最前面的window为keywindow) Push到下一层的顺序 viewWillDisappear->viewWillAppear->viewDidDisappear->viewDidAppear...当挂起时,程序还是停留在内存中的,当系统内存低时,系统就把挂起的程序清除掉,为前台程序提供更多的内存。...2、UIWindow的主要作用有: 1.作为UIView的最顶层容器,包含应用显示所有的UIView; 2.传递触摸消息和键盘事件给UIView; 把view添加到uiwindow 3、把view...添加到uiwindow上面 (1)直接将控制器的view添加到UIWindow中,并不理会它对应的控制器 [self.window addsubview:vc.view]; (2)设置uiwindow...的根控制器,自动将rootviewcontroller的view添加到window中,负责管理rootviewcontroller的生命周期 [self.window.rootviewcontroller
,是一个栈结构,当我们要 pop 到某个 ViewController 的时候,直接用 for in 去遍历 viewControllers 即可: for (UIViewController viewController...,我们一般会将一个页面的局部视图以自定义 UIView 的方式独立出来,如果在该视图中有触发事件(事件处理不需要父视图的上下文),就会遇到在 UIView 中获取 UIViewController 的情况...,可以写一个 UIView 的范畴 UIView(UIViewController): #pragma mark - 获取当前view的viewcontroller + (UIViewController...*)getCurrentViewController:(UIView *) currentView { for (UIView* next = [currentView superview...,我们使用#if DEBUG这种定义模式来区分,那么在默认Pods中是无效的。
iPad开发简单介绍 iPad开发最大的不同在于iPhone的就是屏幕控件的适配,以及横竖屏的旋转。 Storyboard中得SizeClass的横竖屏配置,也不支持iPad开发。...1.在控制器中得到设备的旋转方向 在 iOS8及以后,屏幕就只有旋转后屏幕尺寸之分,不再是过期的旋转方向。...内容控制器中设置的方法 self.preferredContentSize self.contentSizeForViewInPopover /ios7过时/ 3>设置在什么地方显示 调用方法 /*...* @param rect 指定箭头所指区域的矩形框范围(位置和尺寸) * @param view rect参数是以view的左上角为坐标原点(0,...:YES] 4.iPad特有的UISplitViewController的使用 a.masterViewController 1>masterViewController(主要控制器) 2>负责展示主要的菜单内容
UIView是iPhone屏幕上很多控件的基础类。每个iPhone用户界面都是由显示在UIWindow(这其实也是个特殊的UIView)内的众多UIView及其专门化子类构建的。...进度与活动: UIActivityIndicatorView UIProgressView 控制器类 UIViewController类 UIViewController负责创建其管理的视图及在低内存的时候将它们从内存中移除...UIView视图使用initWithFrame:初始化,而其UIViewController则使用init类方法直接初始化。3....UIViewController实例负责设置视图的外观和它显示的子视图。 UINavigationController类 1. 导航控制器使用内置动画在视图之间切换; 2....通过调用initWithRootViewController:方法可以将特定控制器设置为根。
介绍 UIViewController 可以理解为 App 的界面,负责管理 UIView 中显示的内容和用户的交互,主要有以下作用: 负责创建和管理 UIView。 响应用户与视图的交互。...() xib 这种方式本质是 xib 创建 UIView,然后让这个 UIView 成为 UIViewController 的默认 View。...(2)将File’s Owner的view属性设置为xib文件(拽线设置即可)。...需要设置当前的 UIViewController 为被代理 UIViewController 中的代理属性。 闭包 可以理解为代理模式中协议的闭包替代,比代理模式更简单。...UIViewController 将值通过通知的方式发送出去。
; 该界面中的元素被嵌套在了 父控件 UIView 中, 这些界面中的控件就是 子控件 ; 下图是 Main.storyboard 中的 截图; ---- ( 4 ) UIViewController...UIView ; 2.UIViewController 作用 : UIViewController 负责 ① 管理 UIView 的生命周期 创建 显示 销毁, ② 监听 UIView 内部控件的事件响应..., ③ 控制 UIView 与 用户之间的进行交互 ; 3.UIViewController 开发环境中的对应关系 : 选中界面中的 View Controller 元素, 然后去 属性面板 中对应的...2.设置View中的子控件按钮及点击事件 : 将一个按钮控件拖入 UIView 控件中, 修改文字为 改变颜色; 这里尝试一种新的方法来进行按钮点击方法设置; ① 进入辅助编辑器模式 :...; 2.拖线 将 白色的 UIView 传入 UIViewController.m 中 : 按住 control 不放, 左键拖动 白色的 UIView 控件, 拖动到 ViewController.m
如果能,那么 UIWindow 会从后往前遍历自己的子 UIView,将事件向下传递。...响应者对于触摸事件的响应和传递都是在touchesBegan方法中完成的。该方法默认是将事件顺着响应者链向上传递,即将事件交给上一个响应者进行处理。...默认的next对象为: (1)UIView:若当前响应者是 UIViewController 的view,则next是 UIViewController,否则上一个响应者是其父 UIView。...(2)UIViewController:若当前响应者是 UIWindow 的rootViewController,则next是 UIWindow;若是被 present 显示的则next是presentingViewController...将手势添加到需要的 UIView 上。每个手势只对应一个 UIView,当屏幕触摸在当前 UIView 里时,如果手势和预定的一样,回调方法就会调用。
介绍 WWDC 2019 推出了上下文菜单(Context Menus)成为 3DTouch 的替代品。 需要通过长按方式触发。...如果要启用上下文菜单,需要创建一个 UIContextMenuInteraction 并将其添加给某个触发的 UIView,然后指定 delegate,实现代理方法。...案例 class ViewController: UIViewController { // 需要打开User Interaction @IBOutlet weak var imageView...square.and.arrow.up.fill")) { action in print("share") } // 第三个菜单...UITableView和UICollectionView iOS 13 以后,UITableView 和 UICollectionView 也支持 Context Menus,使用起来特别简单,只需要实现相应的代理方法
: UIViewController 1.2 其次 建议基于UIViewController自建一个BackButtonHandler的分类,如UIViewController+BackButtonHandler.h...}]; } } } return NO; } 3.最后 在实现文件CMWebViewController.m导入如上分类,并实现分类中BackButtonHandlerProtocol...协议的navigationShouldPopOnBackButton方法。...@end 设置JS-OC交互对象 - (void)webViewDidFinishLoad:(UIWebView *)webView { // 设置javaScriptContext上下文...self.jsContext = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"]; // 将iosDelegate
领取专属 10元无门槛券
手把手带您无忧上云