首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
oc专题
保姆级教学:OC监听网络状态变化 Reachability监听网络变化 ios网络变化
本文主要讲解了,在oc开发中,怎么去使用代码进行网络监听,十分的通俗易懂。 首先,在xcode工程中导入SystemConfiguration框架。 然后导入Reachability.h文件。 Reachability文件 点击下载,也可以按照如下内容创建对应的文件。 Reachability.m //文件名Reachability.m/*Copyright (C) 2016 App
阅读更多...
oc中关于pch文件
pch 可以用来存储共享信息,比如设备屏幕的宽度,高度。版本号等等 公用信息 Xcode 老版本会自动为我们创建pch文件,新版本开始不自动创建了,如果需要使用可以自己手动创建 创建完成后可以在里面定义常量 此处以屏幕尺寸为例 如下 代码如下: 复制代码代码如下: //获取屏幕 宽度、高度 #define SCREEN_FRAME ([UIScreen
阅读更多...
oc 图片变黑白
理论依据: 所谓颜色或灰度级指黑白显示器中显示像素点的亮暗差别,在彩色显示器中表现为颜色的不同,灰度级越多,图像层次越清楚逼真。灰度级取决于每个像素对应的刷新 存储单元的位数和显示器本身的性能。如每个象素的颜色用16位 二进制数表示,我们就叫它16位图,它可以表达2的16次方即65536种颜色。如每一个象素采用24位二进制数表示,我们就叫它24位图,它可以表达2的24次方即16777
阅读更多...
OC中数组、字典、集合常用方法的运用
/* ====================== 一 NSArray======================== 1.创建对象 1.1初始化方法(2) //一般程序有问题先检查初始化 1.2类方法 1.3字面量方法 2.数组查找 2.1通过下标访问对象[ .[i]]
阅读更多...
iOS开发:OC篇:常用字符串方法的运用
1 NSString .1创建 alloc init stringWith .2获取长度.length .3获取字符 characterAtIndex .4前缀和后缀的判断 hasPrefix hasSuffix .5某个字符串在另一个字符串的范围(range)(NSMakeRange) rangeOfString .6截取(sub) substringFro
阅读更多...
OC中的分类与类扩展
在OC中,对于已有的类进行扩展,我们有两种方式: 1、在原始类的定义中,进行代码扩展。 2、通过继承的方式,扩展子类。 3、使用分类的方式。 第一、二种方式不用多说,第三种方式则是OC中比较有特色的功能。 分类允许我们在不更改类的原始代码的情况下,实现对类的功能扩展,包括:添加实例方法,类方法与实例变量,属性(添加实例变量与属性需要匿名分类——类扩展)。 如何定义分类\类扩展
阅读更多...
「OC」剪不断,理还乱——UIResponder、UIGestureRecognizer、UIControl的响应优先级探究
「OC」剪不断,理还乱——UIResponder、UIGestureRecognizer、UIControl的响应优先级探究 文章目录 「OC」剪不断,理还乱——UIResponder、UIGestureRecognizer、UIControl的响应优先级探究前言介绍UIResponderUIGestureRecognizerUIControl 正文UIGestureRecognizer和
阅读更多...
OC学习总结之异步连接
哎, 前几天去了趟韩国, 浪了几天. 一直没机会写博客. 这不回来的第一天上班就是儿童节,祝大家节日快乐哈..不吹牛逼了 直接搞起 1、同步连接和异步连接 同步连接是iOS中网络连接的一种方式,当请求的数据量小时,同步连接是一个很好的选择。UI“冻结”是它的一个缺点。 同步连接步骤: //新建一个URL NSURL *url = [NSURL URL
阅读更多...
仿qq弹出列表的actionSheet用oc ,swift2和安卓的简单实现
在这公司上班也是醉了,一个产品公司不大利于程序员的发展,最主要的是公司不关心员工的成长,每天就知道在公司优化代码和换下公司的界面等一些繁琐的事情,完全是在浪费时间,倒不如学一些新的东西,今天学ios的时候发现了qq5.0版的那个退出程序时的上弹提示菜单栏,以前也就是用popwindow来实现的,今天看ios的代码实现起来确实是如此的简单,也就是已经封装好的一个控件UIActionSheet,想起安
阅读更多...
「OC」初识MVC —— 简单学习UITableView的解耦
「OC」初识MVC —— 简单学习UITableView的解耦 文章目录 「OC」初识MVC —— 简单学习UITableView的解耦写在前面认识MVC解耦数据源代理 创建cell的基础类创建section的相关类分离数据源分离代理总结参考资料 写在前面 最近在学习了解MVC,然后开始发现,原来之前自己写的内容,真的拿不上一点台面,真是叫人头大啊。好吧😭,知耻而后勇,只能
阅读更多...
OC中实例变量初始化方法,setter方法以及便利构造器的不同
OC中实例变量初始化方法和setter方法 1.使用实例初始化方法 initWith开头的方法 2.使用实例setter方法 默认初始化方法 + setName:xxx setAge:xx 3.使用构造器 类名+With… 首先介绍下实例初始化方法 使用实例初始化方法 initWith开头的方法 .h文件 .m文件里 main函数
阅读更多...
将一个或多个OC对象写入文件/从文件读出
利用NSCoding协议中的编码和解码方法进行实现对象实例的文件存储 1、过程描述:先将即将写入文件的类遵守NSCoping协议,然后在它的.m文件中添加协议中的 -(void)encodeWithCoder:(NSCoder *) aCoder编码方法和-(id)initWithCoder: (NSCoder *)aDecoder解码方法,在实现这些前提之后,就可以调用NSKeyedAr
阅读更多...
OC不可变数组NSArray详解
1、NSSArray(子类NSMutableArray) 、NSSet(子类NSMutableSet)、 NSDictionary(子类NSMutableDictionary)这几个类都是集合类。 2、c语言类型的数组只能存放一种类型的数据。为此引入OC数组NSArray,以面向对象的方法操作数据,可以存放各种类型的对象。(只能存放OC对象,不能存放非OC对象类型,例如基本数据类型,结构体,枚
阅读更多...
OC可变字符串NSMutableString详解
1、已知NSMutableString继承自NSString,是可变字符串。而NSString是不可变字符串。 2、NSMutableString类型字符串的创建: 因为它完全继承自NSString,所以NSString的所有方法,它都可以使用。例如:stringWithFormat方法,还有stringWithContentsOfFile,stringWithContentsOfURL等等。也可
阅读更多...
OC一般类(简单类,组合类,继承关系的子类)的拷贝
1、对于简单的类而言,如果想要实现拷贝操作,就需要先将这个类遵守NSCopying协议,然后在它的实现文件即.m文件中实现-(id)copyWithZone:(NSZone *)zone方法,在方法内以allocWithZone的方式分配内存,若本类实现有初始化成员方法则直接调用初始化方法并用自身成员变量作为实参对其相应的形参进行赋值 ,然后生成新的对象指针,把新的对象指针返回即可;若本身没有
阅读更多...
OC类的深入研究
1、类在创建对象之前也需要加载进空间,也需要占据内存。 2、类只会被加载一次。类也是一个对象,但它的类型是Class类型,就是说类本身也是一个对象,是个Class类型的对象,简称类对象。例如新建一个Person类的对象Person *p=[[Person alloc] init];那么p就是Person类型,而Person是个Class类型的类对象。但平时所说的类就是类对象。 3、由以上得知
阅读更多...
OC 之block类型剖析
1、block用来保存一段代码 2、block跟函数很像(block变量与函数指针很像) (1)可以保存代码 (2)有返回值 (3)有形参 (4)调用方式相同 3、block语法格式: (1)返回值类型 (^block变量名) (参数类型1,参数类型2……)= ^(参数类型1 形参1,参数类型2 形参2……) { //代码段....... //返
阅读更多...
OC构造函数详解
1、创建对象的两种方法 (1)当用“类名 *p=[类名 new]”这种形式创建对象。例如 Person*p=[Personnew]; 其中的new关键字其实是父类NSObject的一个创建对象的方法,返回值为id类型;可以完整的创建一个可用的对象:1、先分配存储空间 +alloc 2、再初始化 -init new方法就相当于先用类名调用NSObject类的类方法+alloc分
阅读更多...
OC 中的分类(Category)详解
1、Category 分类、类别 2、分类:可以给某一个类扩充一些方法(不修改原来类的代码) 3、分类也分为声明(放在.h文件)和实现(放在.m文件): 分类的声明格式如下 @interface 类名(分类名称) //要给类扩充的方法的声明 @end 分类的实现 @implementation 类名(分类名称) //对应的方法实现 @end 4、分类名一般以模块进行
阅读更多...
OC协议应用之代理者模式
1、代理简介:代理就是委托别的对象为自己做事情,首先此对象要给别的对象发送消息,即调用别的对象中的成员方法,别的对象根据此对象发送的消息处理后返回一个处理结果给此对象即消息反馈。 2、代理类的执行过程 (1)一般情况下:一个类委托别的类为自己做事情,是直接将代理类的对象作为自身成员(直接用@property为其设置set/get方法),然后在自己的成员方法中直接调用代理类的成员方法进行实现。
阅读更多...
oc中常用的占位符
1.object-c 中常用的占位符 2.NSString 常用方法介绍 %@ NSString实例 %d,%D,%i 整数 %4d,%4D,%4i 格式化整数 %ld,%lD,%li 长整数 %u,%U 无符号整数 %x 将无符号整数以十六进制小写字母显示 %X 将无符号整数以十六进制大写字母显示 %f 小数 %c 字符
阅读更多...
OC中的组合算法 从N个数里面取M个数的组合
从后往前选取,选定位置i后,再在前i-1个里面选取m-1个。 如 1 2 3 4 5 中选取 3 个 1、选取5后,再在前4个里面选取2个,而前4个里面选取2个又是一个子问题,递归即可。 2、如果不包含5,直接选定4,那么再在前3个里面选取2个,而前三个里面选取2个又是一个子问题,递归即可。 3、如果也不包含4,直接选取3,那么再在前2个里面选取2个,刚好只有两个。
阅读更多...
OC语言之NSArray的使用
# NSArray基本概念 ##1.NSArray的基本概念 - 什么是NSArray? +NSArray是OC中的数组类,开发中建议尽量使用NSArray替代C语言中的数组 +C语言中数组的弊端 * int array[4] = {10, 89, 27, 76}; * 只能存放一种类型的数据.(类型必须一致) * 不能很方便
阅读更多...
OC语言之Protocol基本使用
# Protocol基本概念 ##1.protocol 基本概念 - Protocol翻译过来, 叫做”协议” +在写java的时候都会有接口interface这个概念,接口就是一堆方法的声明没有实现,而在OC里面Interface是一个类的头文件的声明,并不是真正意义上的接口的意思,在OC中接口是由一个叫做协议的protocol来实现的 +protocol它可以声明一些必
阅读更多...
搜索文件内重名的文件(OC)
自定义要查找的重名文件的后缀,并做筛选 NSFileManager *fileManager = [NSFileManager defaultManager]; NSError *error = nil; NSArray *fileList = [[NSArray alloc] init]; //fileList便是包含有该文件夹下所有文件的文件名及文件夹名的数组 fileList = [fi
阅读更多...
OC中特性、静态成员(static)以及协议的基本知识
特性:@property @synthesize @property是一种新的编译器功能,表示声明了一个新对象的属性;存在于接口部分(interface)。 例如:@property NSString * name; 表示某类的对象具有NSString类型的属性,其名称为name, 也就是@property NSString * name;取代了-(void)setNSStr
阅读更多...