- 博客(31)
- 资源 (8)
- 收藏
- 关注
原创 iOS操作系统的层次架构和相关服务
CocoaTouch Layer包含创建ios应用关键的框架。MediaLayer媒体层包含在应用中实现多媒体体验的图形、声音、视频技术和框架。CoreServices Layer包含应用需要的基础的系统服务。这些服务中的核心是CoreFoundation和Foundation框架CoreOS层包含其它大多数技术建在其之上的低级别的功能。虽然应用不直接使用这些技术,它们被其它框架使用。
2014-07-14 17:06:03 1242
原创 IOS中NSUserDefaults的用法(轻量级本地数据存储)
NSUserDefaults适合存储轻量级的本地数据,比如要保存一个登陆界面的数据,用户名、密码之类的,个人觉得使用NSUserDefaults是首选。下次再登陆的时候就可以直接从NSUserDefaults里面读取上次登陆的信息咯。因为如果使用自己建立的plist文件什么的,还得自己显示创建文件,读取文件,很麻烦,而是用NSUserDefaults则不用管这些东西,就像读字符串一样,直接读取
2014-07-13 18:20:13 430
转载 iOS通过iTunes search检测版本更新,并提示用户更新!
原文地址:http://blog.csdn.net/hengshujiyi/article/details/21171991ios中应用的版本判断有两种方法:1.将你的应用版本号同步在你自己的服务器上,打开程序后去自己的服务器获取版本号和手机上的应用版本号做比较,然后去appstore升级2.通过url获取appstore上的最新版本信息,然后和手机上的程序版本
2014-07-11 10:37:22 512
原创 iOS开发如何实现消息推送机制
Push的原理: Push 的工作机制可以简单的概括为下图 图中,Provider是指某个iPhone软件的Push服务器,这篇文章我将使用.net作为Provider。 APNS 是Apple Push Notification Service(Apple Push服务器)的缩写,是苹果的服务器。 上图可以分为三个阶段。 第一阶段:.net应用程
2014-07-10 17:31:11 462
转载 GCD之dispatch queue
GCD多线程http://www.cnblogs.com/scorpiozj/archive/2011/07/25/2116459.htmlGCD之dispatch queueiOS中多线程编程工具主要有:• NSThread• NSOperation• GCD这三种方法都简单易用,各有千秋.但无疑GCD是最有诱惑力的,因为其本身是apple为多核的并行运算提出
2014-07-09 22:07:34 395
转载 k-v-o 扫盲
k-v-o扫盲 对kvo/kvc做了简单的介绍,可作为入门读物。有些术语描述不够精确请指正。欢迎讨论。Kvo是Cocoa的一个重要机制,他提供了观察某一属性变化的方法,极大的简化了代码。这种观察-被观察模型适用于这样的情况,比方说根据A(数据类)的某个属性值变化,B(view类)中的某个属性做出相应变化。对于推崇MVC的cocoa而言,kvo应用的地方非常广泛。(这样的机制
2014-07-09 21:58:42 596
转载 GCD多线程之dispatch queue
GCD多线程 GCD之dispatch queueiOS中多线程编程工具主要有:• NSThread• NSOperation• GCD这三种方法都简单易用,各有千秋.但无疑GCD是最有诱惑力的,因为其本身是apple为多核的并行运算提出的解决方案.虽然当前移动平台用双核的不多,但不影响GCD作为多线程编程的利器(ipad2已经是双核了,这无疑是一个趋势).
2014-07-09 21:55:19 416
原创 【版本适配】iOS中文本的自适应高度
//文字高度+ (float)height:(NSString *)lab{#ifdef __IPHONE_7_0 NSDictionary * dic = [NSDictionarydictionaryWithObjectsAndKeys:[UIFontsystemFontOfSize:K_FONT_SIZE],NSFontAttributeName,
2014-07-08 21:42:16 445
原创 【继承】指定初始化方法【便利构造器】
父类 SuperClass子类 SubClass根类 NSobject除了私有的实例变量外 子类拥有父类的全部内容继承具有传递性B继承A,C继承B,则C也有A的全部内容+ 类方法,类来调用, 不能写实例变量 意思是:不需要创建对象 , 就可以调用的方法( java中 称用类调用的方法为 静态方法)- 实例方法,对象来调用 //所有* 都代表是 对
2014-07-08 21:27:58 533
原创 iOS内存管理含例子
内存管理:针对创建和销毁过程进行管理***************************Student * s1 = [[Student alloc] init];[s1 release];//0 销毁 NSLog(@"%lu",[s1 retainCount]);//错误用法, s1 现在时野指针, 有原来的地址 但内存已被收回 钥匙 车 //指针在栈区,指向的对象在堆区,retain是对 对
2014-07-08 21:23:39 457
原创 OC协议 委托
协议: 一套标准,方法,只声明了方法,没有实现,由接受协议的对象实现协议本身,也可以服从其他协议协议只有一个 .h 文件协议能够变相的实现多继承 类:父类UIScrollView 提供了屏幕滚动的功能,是所有滚动视图的基类,#import #import "TestProtocol.h"@protocol ProtocolTest //NSObject是一个协议//位置关键//协议 让类来接受,接
2014-07-08 21:23:33 489
原创 iOS中C语言的数组定义
//#import int main(int argc, const char * argv[]){ //数组是 构造类型 int array[5] = {6, 8, 12, 15, 17};//中括号内必须是常量表达式,代表多少元素,注意要初始化({0}),即可 unsigned long a = sizeof(array);
2014-07-08 21:20:00 918
原创 iOS中C中变量的定义
基数的权次方八个一 = 2的八次方 - 14Mbit 的宽带 = 512k 的宽带K M G T 1024进制十进制转2进制: N进制转十进制: 按权求和法十进制转N进制: 连除倒取余 (直到除数为0)intel cpu 内存反着存的 ,内存中 按16进制 存储的bool 两个值 yes 和 no二进制书写 零b打头(0b)按位与
2014-07-08 21:18:23 490
转载 检测网络连接状态
#import "AFNetworkReachabilityManager.h"- (BOOL)isNetWorkReachable{ __block CGRect rect = _nonNetworkLabel.frame; //这里的声明前面加__block,作用是在块里可以修改rect的值; AFNetworkR
2014-07-08 14:16:58 596
原创 TCP/IP、UDP、 Http、Socket的区别
网络由上往下分为:表示层和应用层 :HTTP协议(基于传输层的TCP协议,主要解决如何包装数据)会话层传输层: TCP协议(基于网络层的IP协议)、TPC/IP协议(主要解决数据如何在网络中传输)网络层: IP 协议数据链路层物理层4.socket则是对TCP/IP协议的封装和应用(程序员层面上),Socket本身并不是协议,而是一个调用接口(A
2014-07-07 21:36:04 1190
原创 iOS版本适配
//版本判断if ([[[UIDevice currentDevice]systemVersion]floatValue]>=7.0) { } else if ([[[UIDevice currentDevice]systemVersion]floatValue] }1.要想使button 在6.1版本不带边框,其ty
2014-07-07 18:05:38 480
原创 iOS获取各种路径
获取这些目录路径的方法:1,获取家目录路径的函数:NSString *homeDir = NSHomeDirectory();2,获取Documents目录路径的方法:NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
2014-07-07 18:04:19 531
原创 获取键盘高度
- (void)viewDidLoad{ [super viewDidLoad]; // Do any additional setup after loading the view. self.titleTextField.delegate = self; self.contextTextView.delegate = self;
2014-07-07 18:02:32 696
原创 苹果系统中XCode相关快捷键
行首行尾: commend+左箭头/右箭头 command+left right多选: shift+top low shift+上箭头/下箭头撤销: Commend+z 撤销过度 : Commend+shift+z 删除: delete编译: commend+B运行: commend+R断点: 点击左边行号
2014-07-07 13:09:52 443
原创 iOS中C语言的递归求阶乘
//6.//阶乘long fact(int n){ //先求出传进来数的平方 int value = square(n); long jiecheng = 1; //在计算阶乘 while (value >= 1) { jiecheng *= value; value--; } ret
2014-07-07 13:04:31 804
原创 iOS中C语言的打印一个或多个学生信息
//4.//打印一个学生信息void printOneStudentInfo(STUDENT s){ printf("score=%f sex=%c name=%s age=%d DATE=%d-%d-%d\n", s.score, s.sex, s.name, s.age, s.date.year, s.date.month, s.date.day);}//5.
2014-07-07 13:01:25 544
原创 iOS中C语言的打印三角形
//11.打印三角形int count = 0; printf("请输入你想打印的行数:"); scanf("%d", &count); for(int i = 1;i { for (int j = 0 ; j printf(" "); } fo
2014-07-07 12:59:03 614
原创 计算2 + 22 + 222 + 2222 + ...
//12.计算2 + 22 + 222 + 2222 + ...int n ,a , sum1 = 0, sum = 0; printf("请输入一个数a="); scanf("%d", &a); printf("请输入几位数n="); scanf("%d", &n); sum1 = a; sum = a;
2014-07-07 12:56:49 2231
原创 输入一个字节内的数(0-255)和移动的位数,输出移位结果
//10.循环移位//3.2输入一个字节内的数(0-255)和移动的位数,输出移位结果思路 : 原数左移 n位,右移8-n位 ,二者结果相或即可 int num1 = 0; int count = 0; printf("请你输入一个字节内的数(0-255),和移动的位数:\n"); scanf("%d,%d",&num1,&count)
2014-07-07 12:56:47 1380
原创 iOS中C语言的冒泡排序
//2.//冒泡排序 int array[20] = {0}; for (int i = 0; i 20; i++) { array[i] = arc4random() % 101; printf("%d ", array[i]); } printf("\n"); //外层循环控制比较趟数 for
2014-07-07 12:54:04 497
原创 iOS中C语言的字符串比较
//1.//字符串比较//字符串比较,排序 for (int i = 0; i 6 - 1; i++) { for (int j = 0; j 6 - 1 - i; j++) { if (strcmp(strings[j], strings[j + 1]) > 0) { char temp[20] =
2014-07-07 12:52:32 463
原创 iOS中经常会问到的面试题
1. 描述应用程序的启动顺序1.程序入口main函数创建UIApplication实例和UIApplication代理实例2.在UIApplication代理实例中重写启动方法,设置跟视图控制器3.在跟视图控制器中添加控件,实现对应的程序界面 2.为什么很多内置类如UITableViewControl的delegate属性都是assign而不是retain?请
2014-07-07 12:47:28 1477
原创 使用百度地图关键流程
appkey :DYxNbvBu1sHR2ylcGAYE9znN(自己去百度地图开发者中心申请)安全码:BaiDuDiTuNew(上述申请的时候自己填写的)注: 工程名不要用中文1.至少需要一个 .mm 文件 (自己双击某个.m修改即可)2.在Other Linker Flags中添加“-all_oblc”3.在用到的地方引入#import "BMapKit.h" 头文
2014-07-06 21:43:11 440
原创 添加设备以及更新描述文件
1. 添加设备登陆https://developer.apple.com/account/overview.actionè(左中方)Certificates, Identifiers & Profiles -> (左方)Devices -> (左边)Devices中的All -> 右上角 “+” -> 往下翻 Register Devices -> 填写 Name (自己起名字,
2014-07-06 21:35:30 2399 1
原创 EGOImageView图片缓存加载
EGOImageView* imageView;imageView = [[EGOImageView alloc] initWithPlaceholderImage:[UIImage imageNamed:@"placeholder.png"]];//最初图片没加载完成的时候的占用(默认)图片imageView.frame = CGRectMake(4.0f, 4.0f, 36.0f,
2014-07-05 12:52:37 552
原创 二维码扫描
/*扫描二维码部分: 导入ZBarSDK文件并引入一下框架 AVFoundation.framework CoreMedia.framework CoreVideo.framework QuartzCore.framework libiconv.dylib 引入头文件#import “Z
2014-07-05 11:21:26 602 1
EGOImageView图片缓存加载
2014-07-05
iOS二维码扫描
2014-07-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人