- 博客(204)
- 资源 (1)
- 收藏
- 关注
转载 详解CALayer 和 UIView的区别和联系
1.首先UIView可以响应事件,Layer不可以.UIKit使用UIResponder作为响应对象,来响应系统传递过来的事件并进行处理。UIApplication、UIViewController、UIView、和所有从UIView派生出来的UIKit类(包括UIWindow)都直接或间接地继承自UIResponder类。 在 UIResponder中定义了处理各种事件和事件传递的接
2017-03-15 00:39:55
483
转载 iOS中Block的基础用法
本文简介本章不会对Block做过多的实现研究。只是讲解基本的用法。纯粹基础知识。结合实际项目怎么去做举例。Block使用场景,可以在两个界面的传值,也可以对代码封装作为参数的传递等。用过GCD就知道Block的精妙之处。Block简介Block是一种比较特殊的数据类型。它可以保存一段代码,在合适的时候取出来调用。Block的修饰ARC情况下1.如果用
2017-03-02 12:18:48
419
转载 Cocoa Touch事件处理流程--响应者链
一、事件分类对于IOS设备用户来说,他们操作设备的方式主要有三种:触摸屏幕、晃动设备、通过遥控设施控制设备。对应的事件类型有以下三种:1、触屏事件(Touch Event)2、运动事件(Motion Event)3、远端控制事件(Remote-Control Event)今天以触屏事件(Touch Event)为例,来说明在Cocoa Touch框架中,事件
2017-02-24 19:27:41
516
转载 iOS之单例模式初探
单例模式可能是设计模式中最简单的形式了,这一模式的意图就是使得类中的一个对象成为系统中的唯一实例。它提供了对类的对象所提供的资源的全局访问点。因此需要用一种只允许生成对象类的唯一实例的机制。下面让我们来看下单例的作用:可以保证的程序运行过程,一个类只有一个示例,而且该实例易于供外界访问从而方便地控制了实例个数,并节约系统资源。单例模式的使用场合类只能有一个实例,并且必须从一
2017-02-24 10:56:05
467
转载 iOS页面间传值的方式(Delegate/NSNotification/Block/NSUserDefault/单例)
iOS页面间传值的方式(NSUserDefault/Delegate/NSNotification/Block/单例)实现了以下iOS页面间传值:1.委托delegate方式;2.通知notification方式;3.block方式;4.UserDefault或者文件方式;5.单例模式方式;6.通过设置属性,实现页面间传值在iOS开发中,我们经常会遇到页面间跳转传值的问题,现归纳总
2017-02-23 18:07:17
472
转载 【iOS测试系列】instruments工具的使用(二)- 通过Time Profiler
这篇文章主要介绍使用Instruments的 Time Profiler 的使用前言1.很多公司都恨不得把app压法周期压缩到最低,这就导致了开发中隐藏了很多问题,有点经验的工程师草率的优化下,更糟的情况那些没有经验的工程师甚至不会对app进行任何优化.2.某种程度上来说,你开发过程中是可以忽略性能优化的. 十年前,移动设备的硬件资源是非常有限的.甚至连浮点数都是被禁止的.
2017-02-20 16:28:25
3261
转载 【iOS测试系列】instruments工具的使用(一)- 通过leaks分析内存泄露
转: 搜狗测试 作/译者: NY 性能对于一款app来说至关重要,而程序的内存占用情况就是一项很重要的性能指标。虽然iOS 5.0版本之后加入了ARC机制,但由于相互引用关系比较复杂时,内存泄露还是可能存在。在本文中小编将给大家介绍一下在非ARC的情况下,如何使用Instruments - leaks工具来查找程序中的内存泄露。 运行In
2017-02-20 16:15:58
3755
转载 总结
1. Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么? Object-c的类不可以多重继承 可以实现多个接口 Category是类别 重写一个类的方式用类别好,类别给原有类添加方法,不会改变原有类和其他类之间的关系。
2017-02-20 16:13:16
1255
转载 iOS开发者如何提高自己的水平
转载不知道你有没有参与或是旁观过iOS开发的黑客马拉松,我觉得这是非常好的事情,在这里人们几乎不睡觉,一起脑洞大开,在Objective-C运行时环境下,利用iOS的相关知识攻城略地,度过激情四射的72个小时。对于我来说,它们让人心潮澎湃,我的所有平台知识都在头脑风暴下接受考验,我的技能也得到锤炼。在某场活动里有一次我和我们组的一个伙伴在聊天的时候,他问我:“MarkD
2017-02-15 21:39:00
497
转载 iOS面试必看,最全梳理(二)
来源:Jack_lin的简书HTTP协议的特点,关于HTTP请求GET和POST的区别GET和POST的区别:HTTP超文本传输协议,是短连接,是客户端主动发送请求,服务器做出响应,服务器响应之后,链接断开。HTTP是一个属于应用层面向对象的协议,HTTP有两类报文:请求报文和响应报文。HTTP请求报文
2017-02-15 16:54:07
412
转载 iOS面试必看,最全梳理(一)
来源:Jack_lin的简书序言目前形势,参加到iOS队伍的人是越来越多,甚至已经到供过于求了。今年,找过工作人可能会更深刻地体会到今年的就业形势不容乐观,加之,培训机构一火车地向用人单位输送iOS开发人员,打破了生态圈的动态平衡。矫情一下,言归正传,我奉献一下,为iOS应聘者梳理一下面试题,希望能助一臂之力!OC
2017-02-15 16:51:15
560
转载 那些 iOS 7 中容易被忽视的新特性总结
iOS7到现在已经发布了有一段时间了。相信你现在已经了解了它那些开创性的视觉设计,已经了解了它的新的API,比如说SpirteKit,UIKit Dynamics以及TextKit,作为开发者,也很可能已经在使用Xcode5进行开发了。然而,它新颖以及备受争议的特性,让iOS7成为iOS系统史上最大的发布之一。除非你是那种用整晚的时间阅读iOS7更新内容的那种人,那么就可能会忽视掉一两个新
2015-01-07 22:03:46
1209
转载 IOS开发之----远程推送通知
原文地址:IOS开发之----远程推送通知玩了一年的iPhone了各种App的远程通知接收了不少,每次接收到的时候,就在反思,这丫的怎么实现的! 由于工作方面一直没有接触的机会,所以只好自己主动去做做练习试试了.实践后发现,一系列的配置非常繁琐,当然咯,网上的教程已经一大堆了.在这里还是写一篇文章来记录一些自己容易忘记的细节,以备日后所需时能够有用武之地.
2014-05-12 13:57:53
6141
原创 百度推送
http://developer.baidu.com/wiki/index.php?title=docs/cplat/push/guideiosXcode升级4.6后Bug处理 Xcode又升级了,又出现Warning了.补充解决办法,记录如下:1:Jsonkit中的Direct access to objective-c
2014-05-12 13:51:56
1214
转载 ios 7 statusbar 状态栏 跟随navigationbar的颜色而改变
ios7以下的版本设置导航栏背景颜色可以使用[[UINavigationBar appearance] setTintColor:[UIColor orangeColor]];ios7以后:[[UINavigationBar appearance] setBarTintColor:[UIColor orangeColor]];默认带有一定透明效果,可以使用以
2014-04-02 16:54:47
27804
转载 url转义字符
实例说明url转义需求在需要重定向的url中如果有参数,那么可能会出现问题比如:abc.action?reurl=cde.action?p1=a&p2=2&p3=3我在下一个action接受reurl参数值时,得到的是cde.action?p1=a,后面的都没了,这个是因为url需要转义abc.action?reurl=cde.action%3Fp1=a%26p2=2%26p3
2014-04-01 10:37:35
4149
转载 改变UITabBarItem 字体颜色
self.tabBar.tintColor = [UIColor colorWithHexString:BLUE_GREEN_COLOR]; UITabBarController *tabBarController = (UITabBarController*)self; UITabBar *tabBar = tabBarController.tabBar;
2014-03-31 13:13:45
19191
转载 iOS 推送通知详解
这是一篇编译的文章,内容均出自Parse.com的iOS开发教程,同时作者还提供了视频讲解。本文将带领开发者一步一步向着iOS推送通知的深处探寻,掌握如何配置iOS推送通知的奥义。介绍一点点背景资料众所周知,使用推送通知是一个很棒的、给应用添加实时消息通知的方式。这样做的结局是,开发者和用户之间,彼此永远保持着一种令人愉悦的亲密关系。然而不幸的是,iOS的推送通知并非那么容
2014-03-05 14:56:49
1200
转载 ios中http 和https 协议的访问
最近做个项目,开始采用的是HTTP协议实现客户端和服务器端的交互,后来需要改成HTTPS协议。在修改的过程中发现了一些问题,解决方案如下: HTTP: NSString *urlString =[NSString stringWithFormat:@"https://127.0.0.1/default.aspx?USER=%@",@"111"];
2014-03-05 14:21:30
1547
转载 如何在Xcode5 上创建支持iOS5.0的工程
如何起始创建一个工程就不提了,直接上干货:1、通过Xcode5直接创建的工程是没办法直接将Deployment Target设置为5.0的。解决:在build setting中设置编译环境如下图之后在到Deployment Target中设置即可。2、如果你使用了stroyboard,此时运行仍然是不成功的,提示无法找到storyboard文件。
2014-03-05 14:14:19
1328
转载 apple个人开发者证书无线发布app的实现
解释一下这标题:apple个人开发者证书无线发布app的实现,也就是说不经过发布到app store,直接在ios设备上安装app,注:ios设备不需要越狱。之所以有这篇文章的产生,可以看这里:不通过App Store,在iOS设备上直接安装应用程序下面直接上图,介绍实现步骤:1、设置签名利用developer profile或者adhoc distribu
2014-03-05 14:12:43
1014
转载 让Xcode使用旧版Xcode的SDK
每次Xcode升级,以前的iOS SDK都会被覆盖掉;这是许多人碰到并头疼的问题—-如果想用旧版本的SDK编译就没有办法了。这里就介绍一下Xcode与多个SDK版本并存的方法。针对Xcode的安装顺序总结了两种方法 :安装新版Xcode时备份旧版SDK这是最简单的方法 —- 每当安装新版的Xcode时,备份之前旧的SDK,安装Xcode之后,回复到指定目录下即可。
2014-03-05 14:10:49
6165
转载 Xcode5 如何运行Base SDK iOS6程序和iOS6模拟器 ----如何把老版本的SDK
Xcode 5默认自带SDK 7.0,升级Xcode 5后,Xcode.5就没了,这样我想编译SDK 6.x的程序就难办了(除非同时安装Xcode 4.x和Xcode 5.x两个版本Xcode)。其中我们知道xcode有个Base SDK。但是xcode5默认只自带SDK 7.0的。那么如何实现可选择老版本的呢(如SDK 6.x)。这里给出如何把老版本的SDK加入到新的Xcode中的方法。
2014-03-05 14:09:37
1048
转载 UITextView退出键盘的几种方式
(1)如果你程序是有导航条的,可以在导航条上面加多一个Done的按钮,用来退出键盘,当然要先实现UITextViewDelegate。- (void)textViewDidBeginEditing:(UITextView *)textView { UIBarButtonItem *done = [[[UIBarButtonItem alloc] initWit
2014-03-04 17:12:02
9480
转载 禁止UITextView的copy,cut操作
-(BOOL)canPerformAction:(SEL)action withSender:(id)sender{ // UITextView *text=(UITextView *)sender; [UIMenuController sharedMenuController].menuVisible = NO; //donot display the
2014-02-18 16:05:39
5682
转载 NSDate 时间比较
由 NSDate 转换为 NSString:NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];NSString *strDate = [dateFormatter stringFromDate:[
2014-01-15 15:55:59
18933
转载 IOS 启动画面和图标设置(适配IOS7 and Xcode5)
转自:http://blog.csdn.net/hanbing861210/article/details/14000395关于IOS程序设置启动画面以及图标的设备目前主要为:IPhone设备 和IPad设备IPhone启动画面以及图标的设置目前IPhone的分辨率为:320X480、640X960、640X1136。Default.png
2014-01-13 09:57:15
7706
转载 适配iOS7开发2
来源:http://www.ifun.cc/blog/2013/09/28/gua-pei-ios7kai-fa-2/在前一篇文章中介绍了非autolayout模式下iOS7的适配工作。 今天来介绍一下autolayout下的适配工作。首先,我们用xcode4.6.3创建一个simgle view application. 选中Use storyboard.拖一个UIB
2013-12-03 17:07:54
1307
转载 适配iOS7开发1
来源: http://www.ifun.cc/blog/2013/09/28/gua-pei-ios7kai-fa/iOS7可以说是苹果一次革命性的变化,这样做为一个开发者需要做的事也不少。首先苹果的view布局有所变化,现在view默认是全屏模式,而所有的bar(navigation bar, tool bar, search bars 与scope bars都是半透明),s
2013-12-03 17:06:20
1085
转载 UITabBarController 隐藏
self.tabBarController.tabBar.hidden = YES;但是发现隐藏是隐藏了,但是我手动加的view不能够全屏显示,下面总有一块区域是灰黑色的,那个区域原先是放tabbar的。。。。//************************************************如果是navigationController +tabB
2013-12-02 16:12:07
3369
转载 使用Xcode修改iOS项目工程名和路径名
对,好;错,改正。 ------ 前言系统 10.7 狮子开发平台 xcode 4.5.2旧工程名 MyProject-iPad修改之后 新工程名 FjSk-iPad点击项目,进入可以看到右侧Identity,修改Project Name为:FjSk-iPad,点击enter键,出现点击Rename,出现对话框,提示你是否创建副本
2013-12-02 13:00:14
1239
转载 IOS 在一个应用里打开另一个应用 及其 两个应用互相调用
在IOS应用中打开另外一个应用的解决方案最近要在IOS中实现一个应用启动另外一个应用的功能,搜了一些资料,使用UIApplication的openURL:的方法就能实现,现在整理和大家分享一下!注册自定义URL协议首先被启动的应用需要向iPhone注册一个自定义URL协议。这是在你的项目文件夹的info.plist文件进行的(就是你改变应用程序图标的同一个文件)。Step1
2013-11-28 17:47:19
19948
转载 iOS 检测版本更新
如果我们要检测app版本的更新,那么我们必须获取当前运行app版本的版本信息和appstore 上发布的最新版本的信息。当前运行版本信息可以通过info.plist文件中的bundle version中获取:[cpp] view plaincopyNSDictionary *infoDic = [[NSBundle mai
2013-07-19 16:52:35
64059
6
转载 WebView的使用
1、使用UIWebView加载网页运行XCode 4.3,新建一个Single View Application,命名为WebViewDemo。2、加载WebView在ViewController.h添加WebView成员变量和在ViewController.m添加实现[cpp] view plaincopy
2013-07-02 15:54:40
1243
转载 UIWebView网页视图
UIWebView可以让你创建一个网页浏览器,类似safari,而不是在程序中启动safsri哦。是不是觉得很棒呢?废话少说,切入正题。一、创建UIWebView源码打印?CGRect bouds = [[UIScreen manScreen]applicationFrame]; UIWebView* webView = [[UIWebView
2013-07-02 15:52:40
1055
转载 NSArray 排序汇总
IOS几种简单有效的数组排序方法//第一种,利用数组的sortedArrayUsingComparator调用 NSComparator ,obj1和obj2指的数组中的对象[plain] view plaincopyNSComparator cmptr = ^(id obj1, id obj2){ if ([obj1 integ
2013-06-28 17:27:56
27204
转载 面试题(二)
1.main(){ int a[5]={1,2,3,4,5}; int *ptr=(int *)(&a+1); printf(“%d,%d”,*(a+1),*(ptr-1)); }答:2,5*(a+1)就是a[1],*(ptr-1)就是a[4],执行结果是2,5&a+1不是首地址+1,系统会认为加一个a数组的偏移,是偏移了一个数组的大小(本例是5个int)int
2013-06-03 16:30:43
1250
转载 IOS面试题汇总(中英文)
网上的面试题参差不齐,本人从网上总结了很多的面试题,供大家学习,文档下载: 本人知识浅薄,有些问题暂时还未得到解决,高手看到请留下您宝贵的答案⋯⋯ 1.Difference between shallow copy and deep copy? 浅复制和深复制的区别? 答案:浅层复制:只复制指向对象的指针,而不复制引用对象本身。 深层复制:复制引用对象本
2013-06-03 16:28:42
2664
经典书籍----深入浅出MFC
2010-06-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人