`
liubo0_0
  • 浏览: 20092 次
社区版块
存档分类
最新评论
文章列表
//变量常量 var abc = 100; let bcd = 100; println(abc); println(bcd); 输出: 100 100 //字符串连接 var str = "hello"; str = str + " 你好"; str = "\(str) \(100)"; println(str); 输出: hello 你好 100 //定义数组 var arr = [100,"sdfsd",3231,2.5]; var aa = []; var bb = [String](); print ...
1、以下这些代码,放到AppDelegate的 @ implementation 之前。 #include <libkern/OSAtomic.h> #include <execinfo.h> // 系统信号截获处理方法 void signalHandler(int signal); // 异常截获处理方法 void exceptionHandler(NSException *exception); const int32_t _uncaughtExceptionMaximum = 10; 2、以下这些代码,放到AppDelegate 中。 void s ...
关于获取 手机相片的帖子一堆。但是里面很多的内容都是互相copy,有些方法写的不清楚,我在这里给大家完善下,代码如下: Oc代码 dispatch_async(dispatch_get_main_queue(),^{ @autoreleasepool { ALAssetsLibraryAccessFailureBlockfailureBlock=^(NSError*error)
1、定义 Oc代码 //无返回值一个参数(整形): void(^name)(int); //无返回值两个参数(整形,字符串):
之前想了解runtime的先关知识,无意中发现了消息转发机制,就自己动手写了些。 如上图所示:在oc中调用方法时,本类及父类找不到此方法时,有如下步骤。要重写一下方法。 第一步:尝试动态方法解析
最近研究 移动Hybrid 应用的开发MongoDB的东西。 百度一下才知道: Mongo DB ,是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备受当前IT从业人员的青睐。Mongo DB很好的实现了面向对象的思想(OO思想),在Mongo DB中 每一条记录都是一个Document对象。Mongo DB最大的优势在于所有的数据持久操作都无需开发人员手动编写SQL语句,直接调用方法就可以轻松的实现CRUD操作。   我是在MAC 下安装的。 步骤: 1、下载:http://www.mongodb.org/downloads 找到对应的版本(m ...
关于获取 手机相片的帖子一堆。但是里面很多的内容都是互相copy,有些方法写的不清楚,我在这里给大家完善下,代码如下: dispatch_async(dispatch_get_main_queue(), ^{ @autoreleasepool { ALAssetsLibraryAccessFailureBlock failureBlock = ^(NSError *error) { NSLog(@"相册访问失败 = %@", [error local ...
笔试题: 1、OC的内存管理机制。 2、loadView  viewDidLoad  viewUnload 这三个方法什么时候调用,都干什么用。 3、什么时候调用didReceiveMemoryWarming,如果调用后,怎么处理,内存的上限阀值是多少? 4、OC中多线程几种?举出几种线程安全的措施?什么时候使用多线程。 5、MVC理解   面试题: 围绕笔试题再进行深度挖掘。 还有就是老生常谈的问题,就是如何优化UITableView的加载问题。   这次我也没有面试成功,不过大概知道了中小型互联网公司需要的专业技能 1、性能优化相关 2、对动画的绘制,及一些特效 ...
  逻辑题:   1、写程序判断是否是IP地址。   2、把阿拉伯数字换成汉字。   3、随机100个不重复的数字。     问题:   1、GCD的问题居多(几种方式、区别,使用等)   2、分析UITableView的MVC模型。   3、ARC中的对象是什么时候释放的。   4、自动释放池什么时候使用。   5、UITableView中,有图片,有文字,下拉的时候不卡,怎么优化。   6、runtime机制。   7、网络编程部分。     大家不要以此为答案,死记硬背,还需要多练习,多了解。以上问题基本都是随机问的,不见得每个人都一样。   我对以上的问题 ...
之前想了解runtime的先关知识,无意中发现了消息转发机制,就自己动手写了些。     如上图所示:在oc中调用方法时,本类及父类找不到此方法时,有如下步骤。要重写一下方法。   第一步:尝试动态方法解析   void dynamicMethod(id self, SEL _cmd) { printf("SEL %s did not exist\n",sel_getName(_cmd)); } + (BOOL) resolveInstanceMethod:(SEL)aSEL { class_addMethod([s ...

block的使用

    博客分类:
  • IOS
1、定义 //无返回值 一个参数(整形): void (^name) (int); //无返回值 两个参数(整形,字符串): void (^name) (int , char *); //有返回值 两个参数 int (^name) (char , int); 2、实现   要实现block的具体函数例如:   void (^name) (int) = ^(int sum) { NSLog(@"sum = %d",sum); ...
换换函数: CATransform3D CATransform3DMakeTranslation (CGFloat tx, CGFloat ty, CGFloat tz) tx:X轴偏移位置,往下为正数。 ty:Y轴偏移位置,往右为正数。 tz:Z轴偏移位置,往外为正数。 例: 如果有2个图层,一个是绿色的,一个是红色的。先加载绿色,后加载红色。 tx,ty的左右偏移先不说了。 如果绿色的tz为-10 ,红色的tz为 0 效果如下。 如果绿色的tz为 0 ,红色的tz为-10 效果如下。
变换函数 CATransform3DMakeTranslation 官方文档: Returns a transform that translates by '(tx, ty, tz)'. t' = [1 0 0 0; 0 1 0 0; 0 0 1 0; tx ty tz 1]. CATransform3D CATransform3DMakeTranslation (CGFloat tx, CGFloat ty, CGFloat tz)。 做一个解释,对于初学者来说,可能没有看明白是什么意思。我详细说下 对于CATransform3D来说,它是一个4x4 CGFloat的矩阵。 ...
图层的几何变换。 可以通过矩阵来改变一个图层的几何形状。 CATransform3D 的数据结构定义了一个同质的三维变换(4x4 CGFloat值的矩阵),用于图层的旋转,缩放,偏移,歪斜和应用的透视。 图层的2个属性指定了变换矩阵:transform 和 sublayerTransform。 transform : 是结合 anchorPoint(锚点)的位置来对图层和图层上的子图层进行变化。 sublayerTransform:是结合anchorPoint(锚点)的位置来对图层的子图层进行变化,不包括本身。 CATransform3DIdentity 是单位矩阵,该矩阵没 ...
关于图层的几个坐标系。 对于ios来说,坐标系的(0,0)点在左上角,就是越往下,Y值越大。越往右,X值越大。 一个图层的frame,它是position,bounds,anchorPoint和transform属性的一部分。 设置一个新的frame将会相应的改变图层的p ...
Global site tag (gtag.js) - Google Analytics