- 博客(12)
- 收藏
- 关注
原创 ERROR ITMS-90167: "No .app bundles found in the package"
/**mac系统 升级到 macOS Sierra 遇到这个问题,应该是苹果的 Bug。我用的是Xcode7.3,还没升级到8,用的Swift2*/ERROR ITMS-90167: "No .app bundles found in the package"解决办法:1、先使用 Xcode7.3 打包。2、选中打好的包,“show in Finnd
2016-09-23 17:08:58
5855
原创 Copy
#import "ViewController.h"@interface ViewController ()@property (nonatomic,copy) NSString *str1; //copy 后的返回值是 “不可变”字符串,所以 _str2,不能用copy修饰。@property (nonatomic,copy) N
2016-04-05 22:51:05
417
原创 找到最近的Boss算法题
//层级关系,任意给两个元素,找到最近的、公共的上一级 boss membera1 members membera3memberb1 memberb2 #import "ViewController.h"@interface ViewController
2015-12-16 18:56:22
607
原创 super和self
很多人会想当然的认为“ super和 self类似,应该是指向父类的指针吧!”。这是很普遍的一个误区。其实super是一个 Magic Keyword,它本质是一个编译器标示符,和self是指向的同一个消息接受者!他们两个的不同点在于:super会告诉编译器,调用 class 这个方法时,要去父类的方法,而不是本类里的。 当使用
2015-12-16 13:21:05
493
原创 数组遍历时遇到的小Bug
- (void)test { NSArray *arr = [NSArrayarray]; for (NSInteger i=0; icount -1; i++) { //会循环很多很多很多次,原因如下: arr.count 的类型为 NSUInteger,所以:当arr.count
2015-12-16 12:44:10
461
原创 block为什么使用copy修饰
block 使用 copy是从 MRC 遗留下来的“传统”,在 MRC中,方法内部的 block是在栈区的,使用 copy可以把它放到堆区.在 ARC中写不写都行:对于 block 使用 copy 还是 strong效果是一样的,但写上 copy 也无伤大雅,还能时刻提醒我们:编译器自动对 block 进行了 copy 操作。如果不写 copy,该类的调用者
2015-12-16 12:37:35
1783
原创 曾经写的二维数组整体排序的算法
二维数组排序,如:int arr[2][3] = {{4,12,8},{10,7,17}};排序后: arr = {{4,7,8},{10,12,17}};该算法写的比较渣,嵌套了多层for循环,大学刚接触C语言时写着玩的/* 对二维数组进行整体排序(选择排序) arr[0][0] > arr[0][1] arr[
2015-12-16 12:09:52
540
原创 RunLoop和线程的关系
//RunLoop 和线程RunLoop 的作用就是来管理线程的,当线程的 RunLoop开启后,线程就会在执行完任务后,处于休眠状态,随时等待接受新的任务,而不是退出。//只有主线程的RunLoop是默认开启的,所以程序在开启后,会一直运行,不会退出。其他线程的RunLoop如果需要开启,就手动开启,//猜想runloop内部是
2015-12-16 11:13:36
4417
原创 KVO原理
//KVO 触发原理键值观察通知依赖于 NSObject的两个方法: willChangeValueForKey:和 didChangevlueForKey:。在一个被观察属性发生改变之前, willChangeValueForKey:一定会被调用,这就 会记录旧的值。而当改变发生后, didChangeValueForKey: 会被调用,继而 observeVal
2015-12-16 11:08:23
876
原创 ARC内存管理
ARC 内存管理:注意三点:一: 不要出现循环引用二: 如果出现 Core Foundation 对象(如: CFStringRef, CTFontRef)需要使用 CFRetain(对象)、 CFRelease(对象)来管理。另外可以通过 桥接, 桥接的三种方式__brid
2015-12-16 11:03:38
527
原创 View与Layer
1、 view 是它的根layer 代理,在view第一次显示和每次重绘的时候。 layer调用它的 drawInContext:方法, 2、 在 layer 的 drawInContext:方法中,view(delegate) 调用 drawLayer:inContext:方法, 3、 在 view 的 drawLayer:
2015-12-16 10:46:34
657
原创 词语接龙算法
这是一个猎头发来的算法题,写了4个小时终于写完了。#import "ViewController.h"@interface ViewController ()//存放所有的排列组合的数组@property (nonatomic,strong) NSMutableArray *allSorts;//存
2015-12-16 10:04:51
2880
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人