
OC
文章平均质量分 53
JY逆火
这个作者很懒,什么都没留下…
展开
-
快速添加scrollview与masory代码示例
WS(weakSelf); [self.view addSubview:self.scrollView]; [_scrollView mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.equalTo(weakSelf.view); }]; [_scrollVi...原创 2019-11-01 11:30:21 · 261 阅读 · 0 评论 -
常用的代码块
1.strong:@property (nonatomic,strong) <#Class#> *<#object#>;2.weak:@property (nonatomic,weak) <#Class#> *<#object#>;3.copy:@property (nonatomic,copy) NSString *<#strin...原创 2018-07-20 15:22:58 · 199 阅读 · 0 评论 -
reloadData 图片会闪烁
当【collectionview reloadData】时,如果cell中包含Image,那么Image会闪烁一下,原因是UIView的隐式动画造成的,可以通过下面方法解决。[UIView animateWithDuration:0 animations:^{ [collectionView performBatchUpdates:^{ [collec...原创 2018-07-18 10:59:23 · 2137 阅读 · 0 评论 -
NSDateFormatter转换NSDate返回nil
如果时间格式设置有问题的话,比如HH或者hh,系统会根据当前手机的设置进行转换,一般都强制HH,24小时。今天遇到的问题是当写成24:00:00,系统就返回nil,24小时制,24:00:00应该要写成00:00:00...原创 2018-07-11 18:03:50 · 1611 阅读 · 0 评论 -
PushKit
1、PushKit简介:iOS10之后,苹果推出了CallKit框架增强VoIP应用的体验,主要表现在3个方面:在锁屏状态下,如果有网络电话呼入,VoIP应用可以打开系统电话应用的待接听界面,告别了原来推送通知的展现方式。VoIP应用内发起通话、挂断电话等记录可以体现在系统电话应用的通话记录中。从系统电话应用的通话记录、通讯录或者siri进入VoIP应用,发起通话。总而言之,我们的VoIP应用拥有...原创 2018-07-04 10:04:29 · 2971 阅读 · 2 评论 -
TouchID
Iphone的指纹解锁实际很简单的,但是需要8.0以后使用,苹果都给封装好了,在测试下面代码前,记得设置TouchID,下面上代码吧。-(void)testTouchId{ NSError *error = nil; if ([self.context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometric...原创 2018-07-16 11:25:36 · 696 阅读 · 0 评论 -
IOS本地化
1、国际化,添加支持的语言类型2、创建一个Strings文件,命名为“Localizable,生成一个Localizable.strings文件3、点击新生成的strings文件4、分别在左侧两个文件中添加文本“text” = “测试”;“text” = “textaaa”;不要漏掉’逗号’5、测试,_label.text = NSLocalizedSt...原创 2018-04-05 13:59:43 · 820 阅读 · 0 评论 -
xcrun: error: unable to find utility "PackageApplication", not a developer tool or in PATH
xcrun: error: unable to find utility "PackageApplication", not a developer tool or in PATH后面根据对比发现新版的Xcode少了这个PackageApplication找一份,copy一份过来,放到下面这个目录:/Applications/Xcode.app/Contents/Developer/Platfor...原创 2018-04-08 14:53:32 · 346 阅读 · 0 评论 -
uicollectionview以及uiwindowlevel
好久没用UICollectionView,此处Mark一下。还有就是解决在window上面添加一个新的view,statusbar不显示的问题。//// ProductModalView.m// guolongcustom//// Created by JY on 2018/1/16.// Copyright © 2018年 jianyong.wang. All ri原创 2018-01-16 13:22:55 · 234 阅读 · 0 评论 -
单个页面横屏,其余全部竖屏
在UINavigationController基类中添加如下代码- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation{ return toInterfaceOrientation !=UIDeviceOrientationPortr原创 2017-06-23 08:55:22 · 506 阅读 · 0 评论 -
获取IP地址
IPAdress.hIPAddress.m引入头文件#include #include #include #define IOS_CELLULAR @"pdp_ip0"#define IOS_WIFI @"en0"#define IOS_VPN @"utun0"#define IP_ADDR_IPv4 @"ipv4"#d原创 2017-10-19 17:12:03 · 221 阅读 · 0 评论 -
类似于系统的删除 颤抖效果
最近做一个功能,类似于系统删除APP的效果。见下面代码:1、通过UIView动画效果-(void)BeginShake{ srand([[NSDate date] timeIntervalSince1970]); float rand=(float)random(); CFTimeInterval t=rand*0.0000000001; [U...原创 2018-07-18 14:09:39 · 210 阅读 · 0 评论 -
PhotoKit存储文件到自定义相册
废话不多说,见代码:- (IBAction)fsdaf { PHAuthorizationStatus status = [PHPhotoLibrary authorizationStatus]; if (status == PHAuthorizationStatusDenied) { NSLog(@"用户拒绝"); }else if (status ...原创 2018-07-19 11:24:00 · 867 阅读 · 0 评论 -
IOS IP正则表达式
IPv4的ip地址都是(1~255).(0~255).(0~255).(0~255)的格式下面给出相对应的正则表达式:"^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\."+"(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."+"(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\...原创 2019-01-08 17:35:54 · 1439 阅读 · 0 评论 -
rac 监听textFeild文本改变
[[RACSignal merge:@[self.textfield.rac_textSignal, RACObserve(self.textfield, text)]] subscribeNext:^(NSString* text){ @strongify(self); NSString * ss = [text stringByReplacin...原创 2018-12-12 11:53:37 · 3952 阅读 · 0 评论 -
Clang -rewrite-objc
通过runtime转换OC为c++,在终端执行 $ clang -rewrite-objc /Users/sanyolewis/Desktop/ffsdf/ffsdf/AppDelegate.m但是会报错, $ clang -rewrite-objc /Users/sanyolewis/Desktop/ffsdf/ffsdf/AppDelegate.m In file incl...原创 2018-09-27 14:36:40 · 687 阅读 · 0 评论 -
IOS12 获取wifi
-(NSDictionary *)wifiInfo { NSArray *ifs = (__bridge_transfer id)CNCopySupportedInterfaces(); NSLog(@"interfaces:%@",ifs); NSDictionary *info = nil; for (NSString *ifname in ifs) { ...原创 2018-09-25 11:48:04 · 3666 阅读 · 1 评论 -
XCode添加两个工程联动
接受了一个旧项目,SDK中含有Pods,由于有一个新功能,需要在SDK中进行添加更改,但是SDK中含有Pods,因此不能简单的将SDK添加到工程中去。具体的做法见下方,待我一一讲来:1、首先终端创建一个文件夹test2、在文件夹中终端创建一个Podfile文件,同时将原先的两个含有Pods的工程拷贝进去。Podfile文件内容为: source 'https://github.co...原创 2018-08-08 09:37:55 · 1770 阅读 · 0 评论 -
iOS 动态改变字体
方法1:一次改变,利用Runtime进行处理,对UILabel写一个Category方法2:动态改变,当设置字体后,当前已创建的均需要改变,通知//// UILabel+ChangeFont.m// ChangeFont//// Created by Danale on 2018/7/28.// Copyright © 2018年 wjy. All rights res...原创 2018-07-28 10:39:30 · 1433 阅读 · 1 评论 -
纯代码 scrollview约束
直接上代码,mark一下,省的忘记。。。。。。-(void)setUpSubviews{ UIView * scrollView = [[UIView alloc]init]; [self.scroll addSubview:scrollView]; __weak typeof(self) ws = self; [scrollView mas_makeCons原创 2017-09-27 15:42:35 · 485 阅读 · 0 评论 -
AFNetworking封装单例
最近项目中,网络请求返回数据为NSCFDictiory等C语言类型,查了一下原因为原先项目中使用的是self.networkingTool.responseSerializer = [AFJSONResponseSerializer serializer];而在AF3.0中需要使用self.networkingTool.responseSerializer = [AFJSONRespo原创 2017-08-24 13:27:33 · 1186 阅读 · 0 评论 -
给tabBar设置图片和字体颜色 navigationBar设置字体大小 颜色
给tabBar设置图片和字体颜色 navigationBar设置字体大小 颜色原创 2017-08-14 13:57:23 · 928 阅读 · 0 评论 -
runloop
runloop原创 2017-03-05 11:05:09 · 480 阅读 · 0 评论 -
runtime 理解
runtime原创 2017-02-24 11:37:10 · 339 阅读 · 0 评论 -
ios 面试简单题目
面试题目原创 2017-03-03 15:53:39 · 338 阅读 · 0 评论 -
本地通知LocalNotification简单实用及示例
本地通知原创 2017-03-02 14:21:49 · 2212 阅读 · 0 评论 -
GCD
GCD IOS原创 2017-02-22 17:38:52 · 324 阅读 · 0 评论 -
ios runtime 对私有对象进行更改 查询
ios runtime 更改私有属性原创 2017-02-22 17:10:54 · 436 阅读 · 0 评论 -
class_copyIvarList和class_copyMethodList实例
class_copyIvarList class_copyMethodList原创 2017-02-22 16:10:34 · 1208 阅读 · 0 评论 -
runtime 实现nscoding
nscoding runtime原创 2017-02-22 15:42:05 · 447 阅读 · 0 评论 -
block 相关问题
1、为什么用copyblock本身是像对象一样可以retain,和release。但是,block在创建的时候,它的内存是分配在栈(stack)上,而不是在堆(heap)上。他本身的作于域是属于创建时候的作用域,一旦在创建时候的作用域外面调用block将导致程序崩溃。使用retain也可以,但是block的retain行为默认是用copy的行为实现的,2、__block和__weak有什么区别?_...原创 2017-02-22 10:00:21 · 441 阅读 · 0 评论 -
BLOCK
BLOCK原创 2017-02-21 18:08:21 · 210 阅读 · 0 评论 -
NSMutableArray 被copy、strong修饰后的变化
NSMutableArray 被copy、strong修饰后的变化原创 2017-02-21 17:24:01 · 381 阅读 · 0 评论 -
IOS Category 与 Extension区别
category extension原创 2017-02-27 16:42:12 · 689 阅读 · 0 评论 -
线程间的通信
线程通信原创 2017-03-10 16:25:57 · 261 阅读 · 0 评论 -
单例的创建
单例原创 2017-03-07 17:47:14 · 201 阅读 · 0 评论 -
苹果应用上架被拒的原因
iOS 应用提交审核要持续一周或者更久,在提交之前,我们一定要进行「自我审查」,避免被拒。ASO100 为大家收集整理了2015年 App Store 审核被拒的23个理由,并且附上官方拒绝理由原文,供大家上传应用时对照检查。应用被拒分为两种:Binary Rejected 和 Metadata Rejected。前者需要重新上传应用并且重新排队,后者只需要修改信息,不需要重新上传应用。1原创 2017-08-08 13:42:35 · 2120 阅读 · 0 评论 -
js oc 交互 加载沙盒路径下的图片
self.context[@"to"] = ^(NSString * name){//本地沙盒图片路径 NSString * s =[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES).firstObject stringByAppendingPathComponen原创 2017-07-07 12:18:09 · 976 阅读 · 0 评论 -
Masonry自动计算行高
Masonry自动计算行高:@interface ChatTableViewCell()@property (weak,nonatomic) IBOutletUILabel *chatLabel;@property (weak,nonatomic) IBOutletUIActivityIndicatorView *activityView原创 2017-06-12 11:13:39 · 763 阅读 · 0 评论 -
监听键盘的删除方法
查看API我们不难发现,其实系统是有事件抛出来的:@protocol UIKeyInput - (BOOL)hasText;- (void)insertText:(NSString *)text;- (void)deleteBackward;@end NS_CLASS_AVAILABLE_IOS(2_0) @interface UITextField原创 2017-06-05 13:28:34 · 1751 阅读 · 0 评论