![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
杂记
DY_blog
这个作者很懒,什么都没留下…
展开
-
在集成第三方库的时候报错
在集成第三方库的时候报错,解决方法1:在Build settings里的enable bitcode改为NO原创 2016-09-14 15:46:40 · 535 阅读 · 0 评论 -
synchronization()
@synchronization(self){//代码}可以为一段代码加锁,只允许一个线程访问这种写法会根据给定的对象,自动创建一个锁,并等待块中的代码执行完毕。执行到这段代码结尾处,锁也就释放了。在上面的例子中,同步行为所针对的对象是self。这么写通常没错,但是@synchronized(self)会大大降低代码效率,甚至很多时候,还可以被人感觉到效率明显下降了,因为共用同一个锁的那些同步转载 2016-10-13 17:04:16 · 374 阅读 · 0 评论 -
setter getter方法
@property (nonatomic,strong)会自动为属性生成setter 和 getter方法@property (nonatomic,strong,getter = show1,setter = show2)其中的getter = show1是为getter修改方法名原创 2016-10-13 17:19:26 · 389 阅读 · 0 评论 -
App通过使用iTunes让用户上传和下载文档
有一些App需要通过使用iTunes让用户上传和下载文档。要让iOS程序支持iTunes文件交换其实很简单,只需要在程序的Info.plist里增加一个键:UIFileSharingEnabled(Application supports iTunes file sharing),赋值YES。文件在Documents目录下原创 2016-10-14 13:52:28 · 486 阅读 · 0 评论 -
查看真机app的沙盒目录
Xcode代开项目 window-Devices 选择真机,再选中想要查看的app,点击底下的⚙️,show可以查看,down可以下载,replace可以替换,如果想要给app的documents添加一个文件,先下载下来.xcappdata文件,右键显示包内容,添加进去一个文件,然后在replace,选中.xcappdata这个文件就可以了,原创 2016-10-14 16:52:10 · 1288 阅读 · 0 评论 -
NSUserDefaults
NSUserDefaults *userDefaults = [NSUserDefaultsstandardUserDefaults];[userDefaults setObject:self.ble.deviceUUID forKey:@"U80UUID"];[userDefaults synchronize];原创 2016-10-27 15:46:20 · 294 阅读 · 0 评论 -
本地通知UILocalNotification
#pragma mark - 私有方法- (void)showLocalNotification:(NSString *)nid withMsg:(NSString *)msg andSound:(NSString *)sound { UILocalNotification *notification = [[UILocalNotificationallo原创 2016-10-19 14:56:08 · 293 阅读 · 0 评论 -
页面间传值之storyBoard
重写这个方法- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if ([segue.identifierisEqualToString:@"SignUpAdd"]) { SignUpAdditionalViewController *sua = segue.d原创 2016-10-19 17:26:53 · 208 阅读 · 0 评论 -
UITableView的beginUpdates和endUpdates
beginUpdates和endUpdates两个方法是配套使用的,标记了一个tableView的动画块,分别代表动画的开始和结束,两者同时出现,可以嵌套使用,一般在添加,删除,选择tableView中使用,并实现动画效果,在动画块内不建议使用reloadData,如果使用,会影响动画,在tableView执行:删除行,插入行,删除分组,插入分组时使用代码:[_原创 2016-10-20 11:04:35 · 366 阅读 · 0 评论 -
awakeFromNib,viewDidLoad
//1,在运行程序的时候,awakeFromNib是在viewDidLoad之前发生的。//就是如果想要对view本身进行一些例如背景颜色,透明度之类的设置就只能在awakeFromNib里面进行,//因为view被load之后再改就来不及了,所以只能在view被load之前进行设置,就是awakeFromNib2,当建立控制器并勾选XIB的时候,当是控制器的时候,不会走- (void转载 2016-10-20 11:56:37 · 381 阅读 · 0 评论 -
snapshotViewAfterScreenUpdates截屏
UIView *snapView = [_containerViewsnapshotViewAfterScreenUpdates:NO];对_containerView生成一个副本View,参数为NO表示立刻截屏_containerView现在的状态,如果为YES则需要等这个_containerView完成一系列工作后在截屏原创 2016-10-20 14:26:30 · 1001 阅读 · 0 评论 -
app内切换语言
设置AppleLanguages字段,只会在下次启动App才会生效,在App启动后就已经生成了一个Bundle,里面识别好了对应着AppleLanguages的国际化文件,在App运行期间设置这个字段,是不生效的,所以我们去修改这个Bundle,写一个NSBundle的扩展。.h#import @interface NSBundle (Language)+ (void)setL转载 2017-08-18 16:24:26 · 608 阅读 · 0 评论 -
oc和js互调
html代码: Mitchell function show() { alert(1); } function showTittle() { alert(document.title); } function aaa() { location.href="https://www.baidu.com/"; } function btnClick(){ loca转载 2017-09-08 10:30:12 · 396 阅读 · 0 评论 -
DEBUG下输出Log
在pch文件中代码:#ifdef DEBUG#define ICLog(fmt, ...) NSLog(fmt, ##__VA_ARGS__)#else#define ICLog(...)#endif原创 2016-10-12 16:31:32 · 504 阅读 · 0 评论 -
NSLog的重定向
代码- (void)redirectNSLogToDocumentFolder { NSArray *paths =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES); NSString *documentDirectory = [p原创 2016-10-12 16:25:57 · 556 阅读 · 0 评论 -
sql语句-日期时间函数
date(日期时间字符串,修正符,修正符.....)time(日期时间字符串,修正符,修正符.....)datetime (日期时间字符串,修正符,修正符.....)julianday (日期时间字符串,修正符,修正符.....)strftime (日期时间格式,日期时间字符串,修正符,修正符.....)这5个函数需要一个日期时间字符串做参数,修正符可以从零到多个,最后strf原创 2016-10-12 16:03:32 · 806 阅读 · 0 评论 -
自动布局之cell
情景:在storyboard中或xib中画了cell,cell中有4个imageView,并且自定义了这个cell使用:在接受到通知时,让某个ImageView的位置改变解决:在接收到通知时刷新tableView,在cell的layoutSubviews方法中改变imageView的frame,但是在第一次运行的时候没有效果,解决方法:在drawRect:方法里再调用一次layou原创 2016-09-14 15:56:57 · 336 阅读 · 0 评论 -
cell的分割线不置顶的问题
-(void)viewDidLayoutSubviews { if ([self.mytableview respondsToSelector:@selector(setSeparatorInset:)]) { [self.mytableview setSeparatorInset:UIEdgeInsetsZero]; } if ([原创 2016-09-18 11:56:02 · 369 阅读 · 0 评论 -
错误集锦
-fembed-bitcode is not supported on versions of iOS prior to 6.0可能是之前的项目enable bitcode 是关闭的,如果用Xcode7.3打开后会报上述错误,因为Xcode7的enable bit code是默认开启的,两者设置不一致导致的,在setting中enable bitcode该为原创 2016-10-10 17:44:59 · 189 阅读 · 0 评论 -
枚举的@property参数
@property(nonatomic)C208StatusCode Statuscode;//C208StatusCode枚举@property (copy,nonatomic) void (^notificationBeganBlock)();//Block原创 2016-10-21 17:58:02 · 626 阅读 · 0 评论 -
深复制与浅复制的理解
-,浅复制,当我们用copy方法拷贝不可变对象,或者mutableCpoy拷贝可变对象时,为新对象分配了内存空间,对象默认为浅复制,只是复制了指针地址,所有两者还是指向同一个对象,当一个对象值改变时,另一个对象的值会跟着改变。二,深复制,为原对象复制一份一模一样的新对象,并且相互之前没有影响,要用到NSCopying协议和NSMutableCopying协议NSCopying协议:原创 2016-10-11 17:25:47 · 312 阅读 · 0 评论 -
深复制与浅复制的理解之续集
当我想给Array实现深复制,但又不想重写这个类的时候,该怎么办,可以利用NSData进行归档,利用NSData的缓冲内存区,为NSArray实现深复制,代码: NSMutableArray *arry1 = [NSMutableArrayarrayWithObjects:per,new,nil]; NSMutableArray *arra原创 2016-10-11 17:47:41 · 204 阅读 · 0 评论 -
归档与解归档
归档就是将数据整理到外部文件(XML,plist,text等)在oc中支持归档的数据类型包括NSData,NSNumber,NSString,NSArray,NSDictionary代码:+ (NSString *)getDocumentPath{ NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDoc转载 2016-10-12 09:44:43 · 266 阅读 · 0 评论 -
编码解码-NSCoding协议
在oc中,我们可以对NSString,NSArray,NSDictionary,NSDate,NSNumber,对象进行编码解码操作,但是当我门要对自定义的类的对象进行编码解码时该怎么做呢,这时候就要用到NSCoding协议了,NSCoding协议的方法- (void)encodeWithCoder:(NSCoder *)aCoder;- (nullableinst原创 2016-10-12 10:02:12 · 606 阅读 · 0 评论 -
UUID唯一标识符
一般在项目中,我们要生成一个不重复的唯一的表示符作为文件或者路径名称的时候,可以使用CFUUIDRef和CFStringRef来生成一个唯一的标识:代码如下: - (NSString *)createCUID:(NSString *)prefix{ NSString * result; CFUUIDRef转载 2016-10-12 10:39:51 · 393 阅读 · 0 评论 -
归档自定义对象用到的编码解码
上文归档中没有提到的对自定义的对象归档,当我们对自定义的对象进行归档时会报错,因为程序对自定义的对象归档不知道该怎么编码解码,所以我们可以通过实现NSCoding协议的相关方法来告诉程序如何编码解码我们自定义类的对象,代码:自定义类遵守NSCoding协议,并且实现一下两个方法#pragma mark---NSCoding- (void)encodeWithCoder:原创 2016-10-12 10:16:56 · 261 阅读 · 0 评论 -
UITextField关闭粘贴复制功能
创建UITextField的子类,并重写以下方法- (BOOL)canPerformAction:(SEL)action withSender:(id)sender { UIMenuController *menuController = [UIMenuControllersharedMenuController]; if (menuControll原创 2016-10-12 11:49:51 · 946 阅读 · 0 评论 -
FMDB的简单封装
@interface Manager : NSObject@property (nonatomic,strong) FMDatabaseQueue *dataQueue;+(Manager*)sharedManager;-(void)initQueue;-(BOOL)insertToDB:(NSString *)table d原创 2016-10-12 13:34:56 · 364 阅读 · 0 评论 -
打包framework
1,Xcode新建项目,不要选application,选择framework&library2,编写代码3,更改参数,在target下选中工程,在build setting下修改几个参数,dead code stripping选为no,link with standard libraries为no,Mach-o type 为 static library4,增加armv7s,在arch转载 2018-01-22 11:16:01 · 276 阅读 · 0 评论