从iOS 8开始,苹果提出新的 UIPopoverPresentationController代替UIPopoverController: 新的UIPopoverPresentationController使用方法如下: // 创建将要显示的Controller DJCategoryViewController *categoryVC = [[DJCategoryViewController alloc] init]; // 设置控制器View的显示大小 categoryVC.preferred…
一.iOS8介绍 iOS8 新特性,主要是UI上进行了统一 1.UIAlertController 2.UIPresentaionController:管理所有通过modal出来的控制器(看笔记) 3.UIPopoverPresentationController 4.SizeClass + Autolayout 5.App Extension 应用扩展 6.Core Image(iOS 5开始就有了,滤镜美图秀秀型 )   二.UIAlertController   1.以往我们使用的时候,都…
iOS8新特性主要体现在4方面 1.UIAlertController 对alert&actionSheet的封装 UIAlertController.h 提示框按钮的选择 typedef NS_ENUM(NSInteger, UIAlertActionStyle) { UIAlertActionStyleDefault = 0, UIAlertActionStyleCancel, UIAlertActionStyleDestructive } NS_ENUM_AVAILABLE_IOS(8_0…
os8发布已经有一段时间了,伴随着ios8同时也出现了许多新的特性,ios系统将会越来越开放,这是好事.其中一个新特性就是在下拉通知栏里加入了个性的widget,开发者可以自己定义widget的样式内容.当然这个功能在Android上早就实现了,^_^.........,如下图: 首先先说几个概念, 1.app extension:extension是iOS8新开放的一种对几个固定系统区域的扩展机制,extension并不是一个独立的app,它有一个包含在app bundle中的独立bundle…
1. App Extension Programming Guide 2.LocalAuthentication.framework - Touch ID Authentication 3.Local Authentication Framework Reference. 4.Photos.framework/PhotosUI.framework 5.AV Foundation framework  拍摄大量照片简单.直接控制焦点.白平衡.曝光设置 6.使用下面API发现并使用新的6.6plus…
1.回顾UIPopoverController的使用,下面这份代码只能在ipad下运行 // 初始化控制器,SecondViewController类继承自UIViewController SecondViewController *vc = [[SecondViewController alloc] init]; // 把vc包装成UIPopoverController UIPopoverController *popover = [[UIPopoverController alloc] in…
在计算cell的实际高度是 我们一般是通过计算frame  拿到最底部一个控件的最大Y值从而的到cell 的高度  算来算去  比较麻烦 其实,iOS8已经提供了直接通过Cell高度自适应的方法了,根本不用计算Cell高度,就可以搞定不等高Cell  这个方法即对系统cell有效 也对通多xib创建的cell有效:   方法:设置tableView的估算Cell高度&rowHeight值为自动计算模式 self.tableView.estimatedRowHeight = ; // 随便设个不那…
          苹果在WWDC2014上正式公布了全新的iOS8操作系统. 界面上iOS8与iOS7相比变化不大,只是在功能方面进行了完好.                                      iOS8中更新和公开了非常多接口,当中有一项本地消息通知UILocalNotification,大家肯定都不陌生. 可是在iOS8中对其进行了优化和改进. 如今它能够依据地理位置发起消息通知,即我们在App中设置好一个坐标(经纬度)和半径(范围),当装有本App的设备进入本区域后…
目前分为四个推送:用户推送,本地推送,远程推送,地理位置推送. if (IS_IOS8) { //1.创建消息上面要添加的动作(按钮的形式显示出来) UIMutableUserNotificationAction *action = [[UIMutableUserNotificationAction alloc] init]; action.identifier = @"action";//按钮的标示 action.title=@"Accept";//按钮的标题 a…
一.什么是应用程序扩展? 应用程序扩展不是一个应用,它是主体应用程序(containing app)中一个单独的包,并能生成单独的二进制文件供其他应用调用. 个人感觉,类似于WP中的启动器,把系统当个软件,启动器就是应用程序扩展: 二.与普通应用的关系 1.应用扩展不同于应用,但是需要基于应用去开发应用扩展,每个应用扩展都是独立于应用运行的二进制文件. 2.与主体应用程序不同,应用扩展实现的是一个特定的.狭义范围内的任务,并且要严格遵循扩展点的协议. 三.生命周期 1.生命周期开始于用户从某个应…
一.以往使用 UIPopoverController 都是只在iPad上使用 /** * UIPopoverController 只能用于iPad,上,iPhone上使用会崩溃 */ -(void)old { VC2 *vc = [[VC2 alloc]init]; UIPopoverController *popover = [[UIPopoverController alloc]initWithContentViewController:vc]; [popover presentPopove…
iOS6新特性 一.关于内存警告 ios6中废除了viewDidUnload,viewWillUnload这两个系统回调,收到内存警告时在didReceiveMemoryWarning中进行相关的处理. 二.关于屏幕旋转 同样ios6 废除了shouldAutorotateToInterfaceOrientation这个旋转屏幕的设置接口. 必须在两个新接口中设置旋转属性:shouldAutorotate.supportedInterfaceOrientations. 收到旋转事件后的处理,同样…
iOS8 新特性Self-Sizing Cells,自动计算cell的高度 一.简单介绍 UITableView是iOS开发最常用的一个控件,通过代理和数据源方法,几乎能实现各种各样的列表功能.在这里面,有一个比较重要的属性是行高rowHeight,默认的行高是44px.很显然,默认的高度有时候很难满足这个功能的需求:"cell的高度动态改变".最常见的就是朋友圈,微博,评论列表类的cell,因为用户评论的内容长度不同,导致cell的高度也不同. 二.旧的解决 那么,以前我们是如何计算…
参考了一下的文章:https://blog.csdn.net/zxtc19920/article/details/54341836 iOS7新特性 · 在iOS7当中,使用麦克风也需要取得用户同意了.如果用户不允许app使用麦克风的话,那么需要使用麦克风的app就不能接收不到任何声音 · [NSArray firstObject]的实现,iOS4之前只是一个私有的方法 · UIImage.renderingMode着色(Tint Color),可以设置一个UIImage在渲染时是否使用当前视图的…
iOS8 针对开发者所拥有的新特性汇总如下 1.支持第三方键盘 2.自带网页翻译功能(即在线翻译) 3.指纹识别功能开放:第三方软件可以调用 4.Safari浏览器可直接添加新的插件. 5.可以把一个网页上的所有图片打包分享到Pinterest. 6.支持第三方输入法:将是否授权输入法的选择留給用户 7.Home Kit智能家居 :可以利用iPhone对家居,如灯光等进行控 制 8.3D图像应用Metal:可以更充分利用CPU和GPU的性能 9.引入全新基于C语言的编程语言Swift:更快.更安…
这篇文章会介绍iOS8开发相关的主要特性. App 插件 通过支持插件,iOS8让我们可以系统指定的区域进行扩展,也就是为用户的特定需求提供自定义的方法.例如:可以通过App插件帮助用户分享他们的内容到社交网站.在用户安装了这个插件后,当他在App中点击分享按钮时就可以选择这个插件了.自定义的插件提供接受,认证,发布用户内容的功能.系统会在分享菜单中列出他们并且在用户点击后实例化他们. 在Xcode中,可以通过添加预先配置好的带插件的app来创建它.当用户安装有插件的app后,用户可以在设置中启…
写在前面 Swift 3.0 正式版发布了差不多快一个月了,断断续续的把手上和 Swift 相关的迁移到了Swift 3.0.所以写点小总结. 背景 代码量(4万行) 首先,我是今年年初才开始入手 Swift 的.加上 Swift 的 ABI 和 API 一直不稳定,所以没有在项目中大范围的使用,所以这次迁移的代码量不多,大概在4万行左右. 迁移时间(一天左右) 迁移时间上的话,大概是花了1天左右.两个混编项目,一个 Swift 为主的项目.期中 Swift 为主的项目 花了大概大半天时间,两个…
引言 一直听说WKWebView比UIWebView强大许多,可是一直没有使用到,今天花了点时间看写了个例子,对其API的使用有所了解,为了日后能少走弯路,也为了让大家更容易学习上手,这里写下这篇文章来记录如何使用以及需要注意的地方. 温馨提示:本人在学习使用过程中,确实有此体会,WKWebView的确比UIWebView强大很多,与JS交互的能力显示增强,在加载速度上有所提升. WKWebView新特性 性能.稳定性.功能大幅度提升 允许JavaScript的Nitro库加载并使用(UIWeb…
1.Swift 2.0 带来哪些新变化 常规变化: 1.OS X 10.11.iOS 9 和 watchOS 2 SDK 采纳了一些 Objective-C 的特性用来提高 Swift 的编程体验, 如可空性.类型化集合和一些别的特性. 2.编译器对冗余的协议一致性,未被使用的绑定值以及可以设为常量的变量这些情况目前会给予警告或报错. 3.修复了跨文件协议遵循时符号不可见或者重复的错误. 4.Swift 语言的调用约定更加智能,能够理解 API 所发生的变化和 Swift 所给出的警告. 5.便…
昨天面试了一个做ios开发的公司,其中面试官问我最新的ios系统版本是多少,以及它的特性是什么?由于自己是初学者,所以对这些没有关注过.今天特地搜索了一下关于ios9和ios10的新特性,并整理了一下. ios9的新特性 1.人工智能的Siri iOS9中Siri将会有全新的UI设计,并能够通过语义来理解用户真正要表达的意思,比如说用户可以设置“当我回家的时候提醒我XX”等等.Siri语音助手的智能性能主要表现在强大的内容检索和管理方面,支持快速自动整理历史文档.根据使用场景的不同为用户提供内容…
Swift 2.0新特性     转眼间,Swift已经一岁多了,这门新鲜.语法时尚.类型安全.执行速度更快的语言已经渐渐的深入广大开发者的心.我同样也是非常喜爱这门新的编程语言. 今年6月,一年一度的WWDC大会如期而至,在大会上Apple发布了Swift 2.0,引入了很多新的特性,以帮助开发者能更快,更简单的构建应用.我在这里也说道说道Swift 2.0中值得大家注意的新特性. guard语句 guard语句和if语句有点类似,都是根据其关键字之后的表达式的布尔值决定下一步执行什么.但与i…
转眼间,Swift已经一岁多了,这门新鲜.语法时尚.类型安全.执行速度更快的语言已经渐渐的深入广大开发者的心.我同样也是非常喜爱这门新的编程语言. 今年6月,一年一度的WWDC大会如期而至,在大会上Apple发布了Swift 2.0,引入了很多新的特性,以帮助开发者能更快,更简单的构建应用.我在这里也说道说道Swift 2.0中值得大家注意的新特性. guard语句 guard语句和if语句有点类似,都是根据其关键字之后的表达式的布尔值决定下一步执行什么.但与if语句不同的是,guard语句只会…
2015年9月8日,苹果宣布iOS 9操作系统的正式版在太平洋时间9月16日正式推出,北京时间9月17日凌晨1点推送. 新的iOS 9系统比iOS8更稳定,功能更全面,而且还更加开放.iOS 9加入了更多的新功能,包括更加智能的Siri,新加入的省电模式.iOS 9为开发者提供5000个全新的API.iOS9新的特性 这对于使用者来说固然是一个好消息,每一次版本更新带来的都是更多的便利和更全面的功能,接受新的系统固然会有一些不适应,新的系统也有可能会有一些缺陷,但是至少苹果在不断地更新,让我们体…
Xcode8新特性 Interface Builder 随着14年的iPhone6和6P出来之后,iPhone的屏幕尺寸也越来越多,屏幕适配是一个需要解决的问题,以后不一定苹果又出什么尺寸的iPhone呢. 在iPhone6和6P发布的同一年,苹果推出的Xcode6中在原有的Auto layout的基础上,添加了Size Classes新特性,通过这个新特性可以使用一个XIB或者SB文件,适配不同的屏幕以及iPhone和iPad两种设备. 在Xcode8中,苹果推出了更加强大的可视化编辑工具预览…
在WWDC2014中,苹果推出了最新的iOS8系统,其中也伴随着很多控件的更新与升级.其中全新的WebKit库让人很是兴奋.本文也将讲解到WebKit中更新的WKWebView控件的新特性与使用方法,它很好的解决了UIWebView存在的内存.加载速度等诸多问题. 环境信息: Mac OS X 10.10.1 Xcode 6.1.1 iOS 8.1 正文: 一.WKWebView新特性 在性能.稳定性.功能方面有很大提升(最直观的体现就是加载网页是占用的内存,模拟器加载百度与开源中国网站时,WK…
2015年9月8日,苹果宣布iOS 9操作系统的正式版在太平洋时间9月16日正式推出,北京时间9月17日凌晨1点推送. 新的iOS 9系统比iOS8更稳定,功能更全面,而且还更加开放.iOS 9加入了更多的新功能,包括更加智能的Siri,新加入的省电模式.iOS 9为开发者提供5000个全新的API.iOS9新的特性 这对于使用者来说固然是一个好消息,每一次版本更新带来的都是更多的便利和更全面的功能,接受新的系统固然会有一些不适应,新的系统也有可能会有一些缺陷,但是至少苹果在不断地更新,让我们体…
本文主要是说一些iOS9适配中出现的坑,如果只是要单纯的了解iOS9新特性可以看瞄神的开发者所需要知道的 iOS 9 SDK 新特性.9月17日凌晨,苹果给用户推送了iOS9正式版,随着有用户陆续升级iOS9,也就逐渐的衍生出了一系列的问题,笔者也在赶忙为自己维护的App做适配,本文写的一些坑基本都是亲身体验了. 一.NSAppTransportSecurity iOS9让所有的HTTP默认使用了HTTPS,原来的HTTP协议传输都改成TLS1.2协议进行传输.直接造成的情况就是App发请求的时…
这里主要介绍一下Xcode10 版本主要更新的内容.随着iOS12的发布,Xcode10已经可以从Mac App Store下载.Xcode10包含了iOS12.watchOS 5.macOS10.14以及tvOS 12的SDK.另外,开发者可以从Xcode中看到当前Deployment Target最低为iOS8,所以后续开发过程中个人觉得可以忽略iOS8之前的一些特性.要想安装Xcode10,mac系统版本必须是macOS 10.13.6或者更高.这里对主要的一些变更做一些介绍(并非所有).…
前言 这几天抽空把WWDC的Session看了一些,总结了一些iOS11新的特性,可能对我们的App有影响,需要我们进行适配.本文作为一个总结. 本文内容包括:集成了搜索的大标题栏.横向选项卡栏.Margins 和 Insets以及 UIScrollView和UITableView 的更新和功能更强大的滑动操作. 一. 在UIKit’s Bars中加入的新功能 WWDC通过iOS新增的文件管理App:Files开始介绍,在Files这个APP中能够看到iOS11中UIKit’s Bars的一些新…
一:如何去学习?都去学习什么? 1:学习优秀项目的设计思想,多问几个为什么,为什么要这么设计,这么设计的好处是什么,还能不能在优化 ,如何应用到自己的项目中 2:学习优秀项目的代码风格,代码的封装设计思想,为什么要这么设计,这么设计的好处是什么,还能不能在优化 ,如何应用到自己的项目中,每行代码都要用心去写,每一行代码都要力求使最简洁的 3:学习别人遇到问题是如何分析问题,解决问题的方法是什么 4:遇到新东西应该如何去学习:1:先研究要学习的东西作用是什么 ,有什么好处  2:如何使用:具体的语…