- 博客(40)
- 资源 (10)
- 收藏
- 关注
转载 RunTime
一,什么是Runtime runtime即运行时,是一套纯C的API,而Objective-C就是运行时机制的,其中最主要的就是消息机制。 Objective-C是基于C的,它为C添加了面向对象的特性。很泛的说,C+Runtime = Objective-C,可以说Runtime是我们 Objective-C幕后工作者。 我们都知道在编译的时候C语言调用了未实现的函数就会报错;而
2016-04-22 10:25:37 486
原创 CALayer的介绍
一、什么是CALayer?在iOS中,能看的见摸的着的东西基本上都是UIView,比如 UIButton、UILabel、UIImageView等,都是UIView。其实UIView之所以能显示在屏幕上,完全是因为它的内部的一个图层,在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层。@property(
2016-04-19 11:51:44 373
原创 iOS-百度地图之LBS.云检索学习
首先,要把百度地图sdk集成到项目中,集成教程可以参考百度地图api,里面有详细的说明。在集成sdk后,需要实现百度地图的基本地图。一. 百度地图-基本地图实现:1. 创建BMKMapView对象。BMKMapView *_mapView;2.对象的实现,以及设置相应的属性 _mapView = [[BMKMapView alloc] initWithFr
2016-04-07 11:44:43 3392
原创 iOS7 TextKit 框架的简单实用
Text Kit架构下面,我们通过图1(此图来自WWDC2013 Session 210)来了解一下Text Kit的架构。图1是基于iOS 7绘制的,从图中,我们可以看到Text Kit是基于Core Text构建的,它通过Core Text与Core Graphics进行交互。而UI控件(UILabel、UITextField和UITextView)则构建于Text Kit之上,可见这
2016-03-25 15:45:13 377
原创 iOS-极光消息推送的快速实现
极光推送,个人感觉是最好用的一款 ,实现也很简单,下面就记录下实现步骤第一步:依旧是导入sdk,然后就是添加相关的库文件,如图:第二步:添加头文件,注册极光推送第三步:实现跟友盟差不多
2016-03-22 16:46:39 545
原创 iOS-友盟消息推送的快速实现
在需求的要求下,今天学习了友盟、极光、个推以及百度推送。这些推送都是恨简单的,在各个api的帮助下顺利实现了推送功能。首先,友盟这个的sdk用的挺多了,也方便,api文档也简单、易懂,因此以它为首个学习目标。实现推送步骤:第一步:这个毋庸置疑,就是把sdk导入到项目之中,友盟的推送sdk是:UMessage_Sdk_xxx (xxx:表示版本号,我这次用的是1.2.6的版本
2016-03-22 16:32:47 1112
原创 iOS开发调试技巧总结
对于软件开发而言,调试是必须学会的技能,重要性不言而喻。对于调试的技能,基本上是可以迁移的,也就是说你以前在其他平台上掌握的很多调试技巧,很多也是可以用在iOS开发中。不同语言、不同IDE、不同平台的调试,有同性也有个性。今天我们就来学习一下iOS开发中的调试技巧,语言暂用为OC,IDE当然是强大的Xcode。首先说明下,Xcode已经为我们调试项目提供了极大的方便。【1.普通断点】
2016-03-21 09:18:31 283
转载 正则表达式
一、什么是正则表达式 正则表达式,又称正规表示法,是对字符串操作的一种逻辑公式。正则表达式可以检测给定的字符串是否符合我们定义的逻辑,也可以从字符串中获取我们想要的特定部分。它可以迅速地用极简单的方式达到字符串的复杂控制。 二、正则表达式的语法 看一个过滤纯数字的例子- (BOOL)validateNumber:(NSString *) textString
2016-02-17 17:02:15 338
转载 Block很简单,就像delegate的简化版
代理设计模式对于iOS开发的人来说肯定很熟悉了,代理delegate就是委托另一个对象来帮忙完成一件事情,为什么要委托别人来做呢,这其实是MVC设计模式中的模块分工问题,例如View对象它只负责显示界面,而不需要进行数据的管理,数据的管理和逻辑是Controller的责任,所以此时View就应该将这个功能委托给Controller去实现,当然你作为码农强行让View处理数据逻辑的任务,也不是不行,
2016-02-17 16:44:08 233
转载 iOS深入学习(Block全面分析)
本文翻译自苹果的文档,有删减,也有添加自己的理解部分。如果有Block语法不懂的,可以参考fuckingblocksyntax,里面对于Block为了方便对比,下面的代码我假设是写在ViewController子类中的1、第一部分定义和使用Block,?1234567
2016-02-17 16:42:32 232
转载 iOS深入学习(使用CocoaPods进行第三方资源管理)
一年前在外包公司呆过,惊叹于Cocoa Pods的强大,也让我有不少迷惑的地方。之前写过一篇Cocoa Pods使用的博客,详细列出了通过Unix终端命令搭建环境的步骤,发布在新浪sae搭建的WordPress博客平台,但是因为没有续费,现在找不到了。近半年来在新公司,惊叹于老大进行项目依赖关系的处理,我老大主要是对iOS平台的Xcode工具中的Workspace、Project、Targ
2015-12-31 14:18:17 297
转载 iOS深入学习(再谈block)
之前写过一篇博客,把Block跟delegate类比,说明了使用block,可以通过更少的代码实现代理的功能。那篇博客将block定义为类的property。过了这么长时间,对于block的内容有了很多的遗忘,果然block的语法比较操蛋,容易遗忘,还是看看http://fuckingblocksyntax.com/,复习一下操蛋的block语法,我翻译如下,(1)block作为本
2015-12-31 13:57:00 290
转载 iOS关键字strong/weak/assign/retain/nonatomic/atomic
老了就是老了,不承认不行啊,看个东西总也记不住。只能反反复复的看看。 依旧本着尊重原创和劳动者的原则,将地址先贴在前面:http://www.cnblogs.com/nonato/archive/2013/11/28/3447162.html,作者Nonato 以下内容为转载:IOS的对象都继承于NSObject, 该对象有一个方法:retainCoun
2015-12-31 11:59:34 260
原创 动态改变CELL 的高度
- (CGFloat)tableView:(UITableView*)tableView heightForRowAtIndexPath:(NSIndexPath*)indexPath { UITableViewCell *cell = [selftableView:tableViewcellForRowAtIndexPath:indexPath
2015-12-17 17:21:27 326
原创 ios 快速集成环信EaseUI
步骤1:导入sdk ,请看环信sdk集成api步骤2:请看图步骤3: 上面步骤会缺少表情,表情请见3.0demo中的chatviewcontroller,EaseEmotionManager *manager= [[EaseEmotionManager alloc] initWithType:EMEmotionDefault emotionRow:3
2015-12-02 15:00:26 1925
原创 iOS 打包ipa
iOS 打包ipa文件步骤1:步骤2:Products文件夹 -> xxx.app ->右键Show in Finder步骤3:把 拖到iTunes 的应用程序中右键Show in Finder 就可以看到打包的The end
2015-11-30 16:44:50 280
原创 改变系统键盘的return键,UIReturnKeyTeype
UIReturnKeyTypeThe text string displayed in the “return” key of a keyboard.typedef enum { UIReturnKeyDefault, UIReturnKeyGo, UIReturnKeyGoogle, UIReturnKeyJoin, UIReturnKeyNe
2015-11-30 10:01:07 614
原创 XToDo的使用
XToDo能做什么呢? 收集和列表TODO、FIXME、? ? ? ! ! !一个项目完成或不show stat(仍然不能打开/关闭)如果你有太多todos过滤结果片段容易做一个todo注释独立的应用程序如果你喜欢不等待10秒Xcode开始 安装: 1.下载XToDo:
2015-11-26 16:48:39 1318
原创 UITextFiled时时获取当前输入的字符长度
//创建一个对象 UITextFiled *textFiled = [UITextFiled alloc] init]; //给对象关联一个方法,ps:UIControlEventEditingChanged (当文本控件中的文本被改变时发送通知。) [textFiled addTarget:self action:@selector(textFieldChange:
2015-11-18 13:54:12 491
转载 iOS AFNetworking 框架导入报错解决方法
错误:1. Use of undeclared identifier ‘kSecFormatUnknown‘2. Use of undeclared identifier ‘kSecItemPemArmour‘3. Implicit declaration of function ‘SecItemExport‘ is invalid in C99 查询后发现, 解决方法有如
2015-11-04 11:35:15 2275
原创 iOS 本地推送
1.创建本地推送- (void)viewDidLoad { [super viewDidLoad]; //创建一个本地推送 UILocalNotification *notification = [[UILocalNotification alloc] init]; //设置10s后 NSDate *pushDate = [NS
2015-11-03 09:53:15 251
原创 iOS TableViewCell 的伸缩
昨天,同学问到这个问题,于是去写了个demo,或许以后可以用上demo:http://download.csdn.net/detail/lct710992308/9233209点击打开链接
2015-11-02 11:51:30 348
原创 iOS设置UICollectionViewCell的间距
从以下三个属性设置1.sectionInset;(UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right);): 故名思义,这是设置上左下右的距离2.minimumInteritemSpacing:这是设置两个cell之间的间距(左右)3.minimumLineSpacing:设
2015-11-02 09:28:37 542
原创 Xcode6.4创建以及使用iOS.a的静态库
1.创建静态库2.实现简单的静态库demo3.command + B 编译下。成功则生成.a的静态库文件4.找到文件,Window -> Projects -> MyLibrary OK,静态库生成完毕。5.静态库的使用方法一:在项目中,Add Files to "XXX"选中这两项,添加
2015-10-29 15:59:00 436
原创 iOS 计算文字内容的高度
对于根据内容,动态改变cell的高度。已经是常见的不能再常见了,而在cell中UILabel是必不可少的。下面的方法就是计算文字高度,让UILabel的高度根据文字内容高度设定NSDictionary* attributes = [NSDictionary dictionaryWithObjectsAndKeys:font, NSFontAttributeName, nil];CGRect
2015-10-29 11:47:30 287
转载 iOS 更改项目名
总会遇到几个项目,在做到一半的时候被要求改项目名,网上找了下相关的资料,大多数是xcode5以前的版本,所以解决好了在这里mark一下,给需要的人。目标为:将项目名XCD4改成xcd5。先上结果图:==》 1.在左侧的导航区域点击两次项目名,两次间隔时间稍微长些,项目名会变成可编辑状态。将名称修改为xcd5后按enter键弹出一个对话框,这个时候放心
2015-10-09 09:22:45 261
转载 IOS第三方框架集合
简 注册 登录 添加关注作者 xuejunjun 2015.06.06 17:39*写了14057字,被17人关注,获得了116个喜欢IOS第三方框架集合字数6100 阅读17132 评论3 喜欢73在iOS开发中不可避免的会用到一些第三方类库,它们提供了很多实用的功能,使我们的开发变得更有效率;同时
2015-08-07 14:45:54 665
转载 OC字符串常用函数
创建一个字符串对象:123456789NSstring * str1 = @"hello";NSString * str = [[NSString alloc]initWithString:@"hello world!"];NSString * str
2015-06-23 16:09:17 384
转载 IOS开发UIView之动画效果的实现方法(合集)
前言:在开发APP中,我们会经常使用到动画效果。使用动画可以让我们的APP更酷更炫,最重要的是优化用户体验,但取决于动画的质量。像QQ、微信、新浪微博等APP,动画效果就很好了,至少我很喜欢它们的动画,让我使用起来感觉很顺畅,心情很开朗。本文会介绍UIView效果的实现方法,非核心动画。一、使用UIView类实现动画基本写法,代码必须放在Begin和Commit之间:
2015-06-19 14:11:17 390
原创 Objective C属性
属性1. 实例变量的范围(作用域)a) private:私有的,只能在本类中使用,外部不能直接使用b) protected:受保护的,能在本类和子类中使用,外部不能直接使用c) public:公共的,所有人都可以使用2. 访问器(set和get)a) 使用访问器的原因: i.
2015-06-18 10:42:31 332
原创 Objective C面向对象
面向过程 分析出解决问题的所需要的步骤,然后按照步骤一步一步实现。面向对象含义: 面向对象是把构成问题的事物分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为 特征:封装、继承、多态 面向对象编程:OOP;类、对象、实例、方法、消息 类:是具有相同属性和相同行为的对象的集合(是对象的抽象形式)
2015-06-18 10:39:32 359
原创 第六章:常量、宏、枚举及函数 第七章:数组、字符串
这周是第二周,本周学习了第六章、第七章以及第八章的前半部分。第六章:常量、宏、枚举及函数 常量的定义:1.宏定义:#define 常量名 值 例如:#define PI 3.14 PS:常量名大写,没有赋值符号(=),没有分号结尾2.const定义:const 数据类型 常量名 =值;例如:const int count = 5; 枚举:1. 枚举的
2015-06-08 13:14:29 342
原创 C语言之第六章 常量 宏 函数
1. 宏定义格式:#define PI 3.14 (#define+ 常量名 + 值)PS: 宏定义的常量名要大写,宏定义没有赋值符号(=),也不需要数据类型,结尾也没有分号。宏:只是单纯文本替换。宏定义时,常量名后面是一个整体,定义时需要注意。例如: 错误: #defineNUMBER 150+10 //这是错误的定义
2015-06-03 08:41:41 659
原创 C语言前五章总结
第一章:计算中最小的基本单位 ==》位 bit;每一个位有两种状态:0 18个bit有256 种状态,代表的一个数;1 TB = 1024 GB,1GB= 1024MB,1MB = 1024KB,1KB = 1024B,1B = 8bit; 第二章:数据类型、变量、运算符数据类型:整形(int)、浮点型:(float、double)、字符型(char)int
2015-06-01 09:28:48 369
原创 C语言之条件分支结构
1.运算符:1.关系运算符:在C语言中,非0(非零)表示真(对),0(零)表示假(错)。 运算符含义示例小于i> 大于i>j小于等于i >=大于等于i >= 12
2015-05-27 17:57:10 2577
原创 c的数据处理和交互输入
1. 隐式类型转换:赋值时,两边数据类型不一致,c语言会将等号右边当数据自动转换为等号左边当数据类型。(ps:高精度转换为低精度时一般会发生数据丢失,也就是精度降低;低精度转为为高精度时数据不会丢失)。例如:double d = 40; //整型数据赋给双精度浮点型变量//C系统将整型数据转变为double型数据然后赋值给变量也可能是这样:int i = 3.14; //
2015-05-26 15:18:17 468
原创 C语言之概述、数据类型、变量以及运算符
1.c语言的概述冯*诺依曼体系结构的计算机组成部分:运算器、控制器、存储器、输入、输出。编程语言的发展过程:机器语言->汇编语言->过程语言->面向对象语言。 C语言的特点:语言简洁、紧凑,使用灵活方便;运算符丰富,灵活使用可以实现其他高级语言难以实现的运算;c语言数据类型丰富,有整型、浮点型、字符型、数组、指针以及结构体;c语言允许直接访问存储器地址;生成的目
2015-05-25 15:34:16 468
原创 在oc中[]中括号的使用,去掉小数点后面的零,字符串的比较
[]中括号在oc中的使用,当调用方法的时候,需要加中括号。如何去掉小数点后面的没用的零,51.2000? 使用%g;例如:double num = 5.100000;NSLog(@"%g",num);最后输出的结果会是:5.1.字符串的比较:使用isEqualToString进行比较if ([str isEqualToString:
2015-05-22 16:02:43 1349
原创 学习iOS的第一天
了解这四个月的课程大纲,时间安排内容。了解了mac的一些快捷键的使用,以及老师教导遇到问题要先自行解决,当自己无法解决当时候,再请教别人。 学习了c语言工程的创建, 了解到main函数是整个工程项目到入口函数。且c语言是区分大小写的。了解到object-c语言工程的创建,了解了c与oc的不同地方。c与oc的不同点: 打印:
2015-05-21 17:29:38 263
The Swift Programming Language中文完整版(CocoaChina精校).pdf
2016-01-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人