-(BOOL) isKindOfClass: classObj 用来判断是否是某个类或其子类的实例 -(BOOL) isMemberOfClass: classObj 用来判断是否是某个类的实例 -(BOOL) respondsToSelector: selector 用来判断是否有以某个名字命名的方法(被封装在一个selector的对象里传递) +(BOOL) instancesRespondT
在视频直播源码开发过程中,有时会需要用到二维码扫描功能,用户只要点开系统自带的摄像头,就能够扫描二维码,那么,这一功能该如何去实现呢? 一、 视频直播源码实现摄像头扫描 if (!_scanView) { _scanView = [[SGQRCodeScanView alloc] initWithFrame:CGRectMake(0, 64+statusb
编写Objective-C程序时,要使用Foundation框架。什么是框架? 框架(framework)是由很多类(class)组成的库,可以用来编写程序。 对象(Object)对象可以保存数据,还可以包含一组函数。函数可以使用对象所包保存的数据。向对象发送某个消息(message), 可以出发响应的函数。这类由消息出发
转载链接 1.NSString和NSData互相转化 NSString * str = @"hello世界"; NSData * data = [str dataUsingEncoding:NSUTF8StringEncoding]; NSLog(@"数据大小:%lu",data.length); NSLog(@"字符串长度:%lu",str.length); //一个汉字的长度是1,占3个字节 NSString * strData = [[N
iOS的通知即在方式上分为两种,一种是在开发应用中就固定时间或者固定条件下发送的通知即本地通知;另一种就是远程通知,由开发者向客户端提供的远程通知发送的方式。 本地通知 (Local Notification) iOS本地通知是在程序中指定某个时间,或者在多少时间倒计时,或者在特定条件之后,出现在设
历经三天的寻找和尝试,终于完成了一个任务,任务要求的服务器访问用WebSocket的URL格式的,而访问结束后要进行订阅和消息发送,这更多出现在MQTT协议的框架里,例如这个文章 https://www.jianshu.com/p/80ea4507ca74 《iOS MQTT----MQTTClient实战-看这篇的就够了》。但
来源:https://www.jianshu.com/p/dc9628de54df iOS项目之wifi局域网传输文件到iPhone的简单实现 iOS项目之wifi局域网传输文件到iPhone的简单实现 兔_小白关注 0.892017.08.25 23:35:34字数 738阅读 3,865 如今手机发展非常迅速,app的种类也琳琅满目,而自从有了4G网之后,手
KVC(Key-value coding)键值编码基本使用能够对对象的私有成员进行取值赋值对数值和结构体型的属性进行的打包解包处理实例: WTPerson.h#import@interface WTPerson : NSObject{ // @public //@protect默认 NSString * _name; } /** name **/ //@property
GCD四队列六组合 四队列 1、主队列(是串行队列) // dispatch_queue_t mainQueue = dispatch_get_main_queue(); 2、全局并行队列 // dispatch_queue_t concu = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);//两个参数,前者是优先级,后者目前用不到 3
转: iOS Objective-C 获取api数据 NSURLSession 直接用session获取 - (void)getDataWithPostSession { NSURLSession *session = [NSURLSession sharedSession]; NSURL *url = [NSURL URLWithString:@"https://xxxxxx/"]; NSMutableURLRequest *request = [NS
AFNetworking下载地址:https://github.com/AFNetworking/AFNetworking 1.发送GET请求 第一个参数:NSString类型的请求路径,AFN内部会自动将该路径包装为一个url并创建请求对象 第二个参数:请求参数,此处为nil 第三个参数:进度回调,此处为nil 第四个参数:请求成功之后回调Block 第五
前言 上篇文章多环境配置、Mach-O与链接器,但是Symbol还没又说道,这篇文章我们继续上篇文章内容讲下去 .xconnfig补充 上面文章在介绍多环境配置的时候讲到了.xconnfig,说到了.xconnfig可以统一管理环境配置,这里可以根据不同的条件配置不同的设置,我们那Other Linker Flags来说
宏定义的黑魔法 - 宏菜鸟起飞手册 宏定义在C系开发中可以说占有举足轻重的作用。底层框架自不必说,为了编译优化和方便,以及跨平台能力,宏被大量使用,可以说底层开发离开define将寸步难行。而在更高层级进行开发时,我们会将更多的重心放在业务逻辑上,似乎对宏的使用和依赖并不多
AppDelegate.m //#pragma mark - INUIAddVoiceShortcutButtonDelegate //新添加 - (void)presentAddVoiceShortcutViewController:(INUIAddVoiceShortcutViewController*)addVoiceShortcutViewControllerforAddVoiceShortcutBut
一、线程与进程 ① 线程与进程的定义 线程 线程是进程的基本执行单元,一个进程的所有任务都在线程中执行;进程要想执行任务,必须得有线程,进程至少要有一条线程;程序启动会默认开启一条线程,这条线程被称为主线程或者 UI 线程。 进程 进程是指在系统中正在运行的一个应用程序;每个进
GCD任务执行顺序 1、串行队列先异步后同步 dispatch_queue_t serialQueue = dispatch_queue_create("test", DISPATCH_QUEUE_SERIAL); NSLog(@"1"); dispatch_async(serialQueue, ^{ NSLog(@"2"); });
概念 代码块block是苹果在iOS4开始引入的对C语言的扩展,用来实现匿名函数的特性,block是一种特殊的数据类型,其可以正常定义变量、作为参数、作为返回值,特殊地,block还可以保存一段代码,在需要的时候调用,目前block已经广泛应用于iOS开发中,常用于GCD、动画、排序及各类回调
- (nullable id)valueForKeyPath:(NSString *)keyPath; 1. 数组求和 如果一个数组是由NSNumber或者数字的字符串组成的,可以直接进行进行求和: NSArray *array = @[@13, @23, @89, @3, @4, @46, @"2"]; CGFloat sum1 = [[array valueForKeyPath:@"@sum.floatValue"] floatVa
什么是RunLoop runloop是运行循环,在程序运行过程中循环做一些事情 RunLoop应用范畴 定时器、PerformSelector、GCD 事件响应、手势识别、界面刷新、网络请求、自动释放池 获取RunLoop对象 iOS中有2套API来访问和使用RunLoop,分别是NSRunLoop和CFRunLoopRef 区别是NSRunLoo是基于CF
直播视频app源码,获取视频缩略图相关的代码 缩略图 AVAeest AVPlayer NSMutableDictionary * headers = [NSMutableDictionary dictionary]; [headers setObject:@"yourHeader"forKey:@"User-Agent"]; self.urlAsset = [AVURLAsset URLAssetWithURL:self.videoURL options:@
如果说一个项目出现的最重大的事故,那无疑就是开发人员使用了不可控的元素. 前言 iOS开发当中有关于视音频播放的开发不在少数,用户时常会使用到一种输出设备,那就是"耳机",这一篇博客写的就是关于耳机的一些开发相关的技术点. 检测耳机是否插入 看到上面的标题的时候
目录 Data(数据)iOS 系统的懒绑定机制如何获取到 Lazy Symbol Pointers 对应的函数名通用二进制文件(多层 MachO 文件) Data(数据) 简介 通过前面对 MachO 文件 Header 和 LoadCommands 的介绍,可知: Header 区域主要用于存储 MachO 文件的一般信息,并且描述了 LoadCommands 区
本文在一些大牛的资料闲时中收集整理,欢迎各位评论提出新的转换类型方便以后搜索时可以比较集中查找所需 //1. float-->Int: float a = 3.14; int b = (int)a; NSLog(@"float-->Int: %d",b); 1.输出结果是1,(int) 是强制类型转化,直接丢弃浮点数的小数部分。 //2. floor 函数
这个笔记,是为了让自己想不起的时候随时可以回顾一下,我不会说是因为自己懒不想记的 ·。· 以后会一直添加工作学习期间遇见的类型转换在这里~~ 欢迎收录查阅~~~ ASCII码互转NSString ASCII码表 //1.ASCII码转NSString unichar ch =65; NSString *str =[NSString stringWithUTF8String:(
输入:scanf,注意scanf的指示符不加@ #import <Foundation/Foundation.h> #import "MyFirstClass.h" int main(int argc, const char * argv[]) { @autoreleasepool { NSLog(@"输入:"); int c; scanf("%d", &c);