- 博客(17)
- 收藏
- 关注
原创 跳转app方法
NSString *str = [NSString stringWithFormat: @"itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=%@", @"1022244878" ];
2016-04-01 14:44:12 347
转载 关于ios的剪贴板基本知识
在iOS中下面三个控件,自身就有复制-粘贴的功能: 1、UITextView 2、UITextField 3、UIWebView UIKit framework提供了几个类和协议方便我们在自己的应用程序中实现剪贴板的功能。 1、UIPasteboard:我们可以向其中写入数据,也可以读取数据 2、UIMenuController:显示一个快捷菜单,用来
2015-12-29 14:10:15 467
转载 iOS-cocoaPods的介绍、安装和使用
文档更新说明 2012-12-02 v1.0 初稿 2014-01-08 v1.1 增加设置 ruby 淘宝源相关内容 2014-05-25 v2.0 增加国内 spec 镜像、使用私有 pod、podfile.lock、创建 spec 文件等内容 2015-09-03 v2.1 优化排版,调整一些描述方式,使文章更易读懂。 CocoaPods 简介 每种语言发展到一个
2015-11-06 10:16:41 370
原创 iOS9.0-Xcode7-细节问题,琐碎的问题以后发现的都更新到这里方便自己查看
iOS9.0--Xcode7之后发现的细节问题与解决: 1. 以往在属性中声明weak属性的数组来包含界面中的一组控件,只要控件不被销毁,weak属性的数组值不会空。但是在iOS9-Xcode7中 layoutSubviews方法调用时发现weak属性的数组为nil,可能是iOS9-Xcode7改变了内存回收的审查。 解决方法:把weak关键词改为strong 先占
2015-10-03 16:56:57 351
原创 iOS9.0-Xcode7-UIWebView加载页面出错解决方法,适用于SDWebImage等一切BitCode和Https相关错误
相信不少人和我一样更新了Xcode7,同时打开公司的项目发现我靠,又是有一些诡异的错误要调整和修改。 其中肯定也有人和我一样遇到了UIWebView加载页面错误的问题,错误提示如下: NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802);
2015-10-03 16:35:01 1479
转载 CALayer4-自定义层
自定义层,其实就是在层上绘图,一共有2种方法,下面详细介绍一下。 回到顶部 一、自定义层的方法1 方法描述:创建一个CALayer的子类,然后覆盖drawInContext:方法,使用Quartz2D API进行绘图 1.创建一个CALayer的子类 2.在.m文件中覆盖drawInContext:方法,在里面绘图 1 @implemen
2015-09-10 15:27:50 287
转载 CALayer3-层的属性
一、隐式动画属性 * 在前面几讲中已经提到,每一个UIView内部都默认关联着一个CALayer,我们可用称这个Layer为Root Layer(根层)。所有的非Root Layer,也就是手动创建的CALayer对象,都存在着隐式动画。 * 当对非Root Layer的部分属性进行相应的修改时,默认会自动产生一些动画效果,这些属性称为Animatable Properties(可
2015-09-10 15:26:49 277
转载 CALayer2-创建新的层
* 上一讲已经说过,UIView内部默认有个CALayer对象(层),通过layer属性可以访问这个层。要注意的是,这个默认的层不允许重新创建,但可以往层里面添加子层 * UIView可以通过addSubview:方法添加子视图,类似地,CALayer可以通过addSublayer:方法添加子层 接下来演示一下如何添加子层: 回到顶部 一、添加一个简单的图层 1
2015-09-10 15:26:07 292
转载 CALayer1-简介
一、什么是CALayer * 在iOS系统中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮、一个文本标签、一个文本输入框、一个图标等等,这些都是UIView。 * 其实UIView之所以能显示在屏幕上,完全是因为它内部的一个层。 * 在创建UIView对象时,UIView内部会自动创建一个层(即CALayer对象),通过UIView的layer属性可以访问这个层。当
2015-09-10 15:21:04 292
原创 iOS-响应者链条
响应者链条 事件处理:点击屏幕时 1先将事件对象由上往下传递(父控件—>子控件),找到最合适的控件来处理事件 2调用最合适控件的处理方法 3如果控件的处理方法调用的[supe 事件处理];就会将事件顺着响应者链条上传 4接着就会调用上一个响应者的处理方法 最合适的控件: 1自己是否接受这个事件 2事件触发点是否在自己的Frame范围内 3从后往前遍历子控件,按照1/2步骤
2015-09-10 14:39:50 361
原创 iOS-Quartz2D绘图的基础用法总结
在UIView的drawRect:方法中具体使用Quartz2D 1获取当前上下文 CGContextRef ctx = UIGraphicsGetCurrentContext(); 2拼接图形(界面) 起点 CGContextMoveToPoint(ctx, 10, 10); 线段-从起点到终点 CGContextAddLineToPoint(ctx, 100, 100); 3
2015-09-01 16:09:42 421
原创 iOS-数据持久化(一)
数据持久化 常用方式: XML (plist,本质XML) Preference (偏好设置) NSKeyedArchiver (归档) SQLite3 (大数据,高效率) CoreData (封装了SQLite3,iOS 5.0出现,低效率) 今天先总结前面的三种方式: 数据源持久化操作(plist) 1NSHomeDirectory沙河根路径 2
2015-08-28 20:05:17 371
原创 iOS-UIViewController的UIView生命周期
控制器接受到系统内存警告会做什么操作: 1application先收到系统的内存警告进入applicationDidReceiveMemoryWarning方法 2application将内存警告消息传递给它的UIWindow的rootViewController 3UIViewController会先找自己的UIView是否存在 4如果UIView不存在就跳过,如果存在就会判断UIVie
2015-08-27 19:45:17 358
原创 iOS-了解App的启动过程
首先我们要知道,一个App之所以能够显示在屏幕上,是因为App有一个UIWindow,我们通过在UIWindow上面添加UIView使得App有了显示的界面 那么需要注意的是:我们虽然可以直接在UIWindow上添加UIView但是由于App常用的设计模式为MVC,所以我门一般把自定义的控制器赋值给UIWindow的rootViewController属性: 为什么要在UIWindow中设置r
2015-08-27 13:30:50 515
原创 iOS-instancetype与id的比较
instancetype与id的比较: 相同点:instancetype和id都可以指向任意类型的指针 差异:instancetype只可以当作返回类型,不可以当作入参类型; instancetype当作返回类型时,如果你用一个其他不符合的类指针接收返回值,编译器会提示警告信息,而id不会; instancetype会检测它的实际指针类型; iOS官方推荐使用inst
2015-08-18 15:03:00 445
原创 iOS-开发常用的数据结构
一. 在iOS开发中常用的结构体 1. NSRange-一个范围结构体,location是位置,length是长度;{4,5},NSMakeRange(4,5);NSStringFromRange可以把它当NSString*返回 2. NSSize-由一个CGSize被typedef过来,CGFloat是double类型typedef过来的,也由两个值组成:with宽度,h
2015-08-16 21:11:28 4759
原创 iOS-开发所用的基本数据-NSString
1. NS的由来:因为Obj-C不支持命名空间,所以为了避免重复,要在类前面加上自己特有的前缀,NS就是next step的意思。 2. [[alloc] init]对比[new]的优势:就是能够在开辟了内存空间之后,可以自定义init方法来方便我们对开辟的内存空间初始化。 3. 获取字符串长度:length属性,NSUInteger类型,%lu 4. 根据索引获得单
2015-08-16 21:06:28 410
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人