Object-C
文章平均质量分 68
AIGCer
坚持有输出的深度学习
独立开发之路学习记录
展开
-
【Object-C】包装类
NSInteger:long 类型NSUInteger:unsigned long 类型NSValueNSNumber#import int main(int argc , char * argv[]){@autoreleasepool{// 调用类方法将int类型的值包装成NSNumber对象NSNumber* num = [[NSNumber a原创 2014-11-30 11:57:05 · 839 阅读 · 0 评论 -
【Object C】 反射机制
Object-C 也提供了类似Java的反射机制。通过以下三种方式与运行环境交互:1、直接通过Object-C源代码2、通过NSObject中定义的方法:isKindOfClassisMemberOfClassresponseToSelector:判断该实例是否调用指定方法3、直接调用运行时函数进行动态编程#import#import "DCAppl原创 2014-12-02 16:46:42 · 877 阅读 · 0 评论 -
【Object C】 类
+ (void)initialize; “+” 表示这是一个类方法- (instancetype)init;“-” 表示这是一个实例方法/*封装:@interface是建立类的关键字,相当于C++中的class。类的名字继承于NSObject,并且对NSObject只有单继承,和public继承方法end表示类结束 1、方法写在大括号之外原创 2014-11-24 18:18:10 · 493 阅读 · 0 评论 -
【Object-C】单例模式Singleton
程序多次创建类的对象没有多大意义,还有可能造成系统性能下降。如果一个类始终只能创建一个实例,这个类称为单例类.单例类可以通过static全局变量来实现.#import @interface DCSingle : NSObject+(id) instance ;@end#import "DCSingle.h"static id instance = n原创 2014-11-30 11:53:40 · 582 阅读 · 0 评论 -
ObjectC&&Swift 渐变色算法实现
一种个OC下Gradient color 的实现原创 2015-10-19 11:53:10 · 437 阅读 · 0 评论 -
TextFiled 控制键盘只可以输入数字(TextFiled only allow number input)
TextFiled 控制键盘只可以输入数字(TextFiled only allow number input)原创 2015-12-16 15:05:45 · 494 阅读 · 0 评论 -
深入理解Block
Block 简介Mac OS X系统10.4及其iOS 4.0后引入了闭包的概念,这项语言特性是作为扩展而加入GCC编译器的。在Foundation框架中大量使用了Block。 块就是一个实现某个功能的函数闭包,这个函数闭包可以带有参数,也可以没有参数,可以有返回值也可以没有返回值者,用符号’^’来表示。块在声明的范围内,可以调用块外部的全局变量和局部变量。void (^someBlock) ()原创 2017-04-01 17:09:27 · 421 阅读 · 0 评论 -
深入学习NSUserDefaults/standardUserDefaults
NSUserDefaultsNSUserDefaults 是iOS Foundation 框架提供的一种用于存储管理单例。Tip 1:支持存储的类型NSArrayNSDataNSDictionaryNSNumberNSString通过NSData可以存储大部分类型的文件,例如要存储一张图片可以先把图片转为NSData。// Create instances of NSDataNSDat原创 2017-03-31 12:17:01 · 727 阅读 · 0 评论 -
CAGradientlayer设置视图背景的渐变效果
可以使用CAGradientlayer来设置某些视图背景的渐变效果: //初始化CAGradientlayer对象,使它的大小为需要设置背景色的视图的大小 CAGradientLayer *gradientLayer = [CAGradientLayer layer];原创 2017-09-05 19:12:42 · 992 阅读 · 0 评论 -
WKWebView 遇到的坑
wkwebView 设置Cookies使用WKWebView configoration 设置cookie 有时候可能不成功。 使用如下方法设置cookie会偶现设置不了的问题。NSString *cookie = [NSString stringWithFormat:@"document.cookie = 'session_id=%@'; document.cookie = 'CLIENT=Ap原创 2017-10-13 15:29:32 · 1383 阅读 · 0 评论 -
iOS Autolayout 之 Masonry 布局
MasonryMasonry是一个轻量级的布局框架 拥有自己的描述语法 采用更优雅的链式语法封装NSAutoLayout, 简洁明了并具有高可读性 而且同时支持 iOS 和 Max OS X。使用Masonry能够使用简单的语法进行Autolayout布局Masonry常用属性与NSLayoutAttrubute的对照表如下 Masonry NSAutoLayout 说...原创 2018-04-03 17:45:26 · 618 阅读 · 0 评论 -
【Object C】 类方法
Object c 中的方法有两类,一类是实例方法,一类是类方法。通过下面的程序来详细的描述类方法的使用。File car.h#import@interfaceCar : NSObject@propertyintcarAge ;-(void)display; //定义实例方法+(void)broadCast;//定义类方法@end原创 2014-11-25 17:34:54 · 770 阅读 · 0 评论 -
【Object-C】多态
Object-c 里面的指针类型有两种1、编译时的类型,由申明该变量时使用的类型决定2、运行时的类型,由运行时实际付给该变量的对象决定如果编译时和运行时的类型不一致,就可能出现多态(Polymorphism)。#import @interface DCBase : NSObject-(void) base ;-(void) test ;@end@原创 2014-11-30 11:50:09 · 628 阅读 · 0 评论 -
【Object-C】判断指针类型,isKindOfxxx
判断指针变量实际指向的对象可以是否为某个类、某个子类的实例,如下方法:-(Bool)isKindOfClass:className 判断是否为对象是否为ClassName或其子类的实例-(Bool)isSubclassOfClass:ClassName 判断是否为ClassName的子类实例-(Bool)isMemberOfClass: ClassName 判断对象是原创 2014-11-30 11:44:58 · 1827 阅读 · 0 评论 -
【Object-C】指针变量强制类型转换
除了id类型外,指针变量只能调用它编译时类型的方法。而不能调用它运行时类型的方法,即使它实际所指向的对象包含该方法。如果需要让这个指针变量调用运行时类型的方法,就需要强制类型转换。#import int main(int argc, const char * argv[]) { @autoreleasepool { // insert code here..原创 2014-11-30 11:48:06 · 3125 阅读 · 0 评论 -
【Object-C】类Class
+ (void)initialize; “+” 表示这是一个类方法- (instancetype)init;“-” 表示这是一个实例方法/*封装:@interface 是建立类的关键字,相当于C++ 中的class。类的名字继承于NSObject,并且对NSObject只有单继承,和public 继承方法end 表示类结束 1、方法写在大括号之外 2原创 2014-11-30 12:03:31 · 653 阅读 · 0 评论 -
【Object-C】类别与扩展Category
Object-C 的动态特征允许使用类别为现有的类添加新方法,并且不需要创建子类,不需要访问原有类的源代码。通过使用类别,可以动态的为现有的类添加新方法,而且可以将类定义模块化的分布到多个相关文件中。point:1、定义类名必须是该项目中没有的类,而定义类别时使用的类名必须是已有的类2、定义类别时必须使用()来包含类别名3、类别中通常只定义类方法和实例方法,不能添加实例原创 2014-11-30 11:36:35 · 970 阅读 · 0 评论 -
【Object-C】继承,super关键字
Point:1、Oc 中不支持多继承。动态调用。2、派生类的数据成员不能和基类重名,若重名,系统将不会定义成功3、基类的成员函数可以和基类的成员函数重名(作用相当于C++中的虚函数)4、派生类中若要调用基类中的方法可以用[super 方法名]的方法。5、Object-C 具有单继承的特点,每个子类只有一个直接的父类6、子类可以继承到父类的全部成员方法和全部成员变量7、原创 2014-11-30 11:43:20 · 1270 阅读 · 0 评论 -
【Object-C】Get / Set 方法
get /set 方法的作用当类中的属性被设置为私有时,需要用get/set方法来存取属性。set()是给属性赋值的,get()是取得属性值的 被设置和存取的属性一般是私有 主要是起到封装的作用,不允许直接对属性操作 set()和get()不一定同时存在,看程序需求File “person.m”#import @interface person :原创 2014-11-30 11:58:53 · 2243 阅读 · 0 评论 -
【Object-C】协议 @protocol
作用类似于接口。用于多个类应该遵守的方法。协议定义的时多个类共同的公共行为规范,这些行为是于外部交流的通道,这就意味着协议里通常是定义一组公用方法,但不会为这些方法提供具体实现,方法的实现交给类去实现。同一个类的内部数据、和方法的实现细节完全相同,但是类是一种具体实现。而协议则规定了一种规范,协议定义某一批类所需要遵守的规范,不关心这些类的内部数据和方法的实现细节,只是规定遵循原创 2014-11-30 11:31:50 · 775 阅读 · 0 评论 -
【Object C】 基本数据类型
#import //import不会重复包含头文件,include不会自动防止重复包含头文件#include //Oc 基本框架 Foundation/Foundation.h#include"print.h" //在Oc程序中可以直接调用C语言函数/*oc中使用的基本数据类型:一般数据类型,扩展的数据类型 整形 int,ch原创 2014-11-24 18:15:28 · 671 阅读 · 0 评论 -
【Object-C】处理对象:description 方法、isEqual方法
description 方法是NSObject 的一个实例方法,所有继承NSObject基类的类都具有该方法。用于“描述自我”,当执行该方法师,系统将输出该对象的自我描述信息。NSObject 类提供的 description 方法总是返回,如果需要更详细的描述类,需要自己定义description 方法。O-c中判断两个变量是否相等由两种方法:1、利用 == 运算符2、原创 2014-11-30 11:37:12 · 682 阅读 · 0 评论 -
【Object-C】Object-C 的包装类
Object-C 提供了NSValue 和NSNumber来封装C语言基本类型,这样就可以让他们具有面向对象的特征。NSInteger : 大致等于 long 型整数NSUInteger : 相当于 unsigned long CGFloat : 在64位平台上相当于 double,32 为平台上相当于 floatNSValue 和NSNumber 都是包装类原创 2014-11-30 11:40:46 · 1039 阅读 · 0 评论 -
【Object-C】Copy
-copyWithZone:Returns a new instance that’s a copy of the receiver. (required)-mutableCopyReturns the object returned by mutableCopyWithZone: where the zone is nil.Declaration:-原创 2014-12-02 16:42:23 · 950 阅读 · 0 评论 -
Xcode 10.0/Xcode 10.1 打包上传App Store,iOS 9系列设备用户下载app出现随机Crash解决方法
现象:Xcode 10.0/ Xcode 10.1 Workspace setting的Build system 设置为default build system 打包,上传到Test flight 测试阶段,使用iOS 9 系统手机下载测试,不会crash使用在Test flight 测试 iOS 9不会crash 的包提交App Store审核,审核通过后 用户iOS9系列设备从App S...原创 2018-12-15 14:23:47 · 1881 阅读 · 0 评论