自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(151)
  • 资源 (35)
  • 问答 (2)
  • 收藏
  • 关注

原创 OC和Swift混编相互调用

现在咱们就一起学习下 OC和Swift混编,如何实现呢?首先创建一个OC项目 这里不在做详细解释,直接进入 打开项目;一 、添加swift 文件 (只要是混编 无论是在oc项目中添加swift文件 ,还是swift项目中添加oc文件) 会提示添加一个桥文件 名字为oc_swift-Bridging-Header.h下面都用这个名字(如图)这个时候 我们只需要点击确定即可; 这个桥文件是用来添加 swift使用oc的时候导入头文件使用的扩充 — 这个文件oc_swift-Bridging-Head

2020-11-25 12:39:30 578

原创 ios 集成百度地图(获取定位信息)

对应以前版本集成和处理(链接https://blog.csdn.net/u013983033/article/details/83062861)下面部分内容可以参考 上面链接1 、首先去百度地图开放平台注册账户2 、然后进行邮箱激活 ,申请秘钥 进入这个界面3 、使用百度sdk1) 首先在info.plist 文件中加入2) 引入头文件#import <BaiduMapAPI_Base/BMKBaseComponent.h>#define BMK_KEY @"qqdGrSQf

2020-11-10 14:41:03 307 4

原创 shell脚本进入指定目录

在linux环境下,常有通过shell脚本进入指定目录的操作,例如有一段脚本 framework.sh#!/bin/bashecho "\n----------- 开始进入指定文件夹 --------------\n";cd /Users/xxxx/Downloads/work/phapp_htmlpwdls -lopen app最后执行 ./framework.sh但是有时候在shell环境下通过./framework.sh执行这段脚本是无法进入phapp_html目录的;需要通过so

2020-08-14 09:42:05 1217

原创 shell 对文件或文件夹加密压缩及解压

一、zip文件加解密1、把文件压缩为zip文件,并在压缩的时候输入密码zip -r -P ${PASSWORD} ${zipfileName}.zip ${fileName}例子:zip -r -P pwd test.zip test2、对应的把zip文件解压缩unzip -P ${PASSWORD} ${fileName}例子:对应上面压缩密码 unzip -P pwd test.zip...

2020-08-14 09:21:12 354

原创 shell 拷贝文件 (syntax error near unexpected token then问题和: command not found问题)

代码如下:#!/bin/bashecho "\n----------- 开始 --------------\n";echo "\n—-----输入对应的环境 sit uat product—-----\n";read -p "输入对应的环境 :" word source_path=XXXXX sit="sit" uat="uat" product="product"echo $wordecho $uatecho $sitecho $productecho "$word"="$si

2020-08-13 18:00:46 49

原创 JavaScript 表单

form(表单)form(表单)对于每个Web开发人员来说,应该是再熟悉不过的东西了,它是页面与Web服务器交互过程中最重要的信息来源。表单form的常用属性和常用的控件input如下:1、form action 属性action 属性规定当提交表单时,向何处发送表单数据。当提交表单时,发送表单数据到名为"a.html "的文件(处理输入):<form action="a.html " method="get" > First name: <input type="text"

2020-06-30 12:54:27 123

原创 jQuery框架的选择器

1、 jQuery选择器说明jQuery 最核心的组成部分就是选择器引擎。它完全继承了 CSS 的风格,可以对 DOM 元 素的标签名、属性名、状态等进行快速准确的选 择,而且不必担心浏览器的兼容性,写法更加简洁。jQuery 选择器实现了 CSS1~CSS3 的大部分规则之外,还实现了一些自定义的选择器,用于各种特殊状态的选择。优点:相对于直接使用 JavaScript 获取页面元素和处理业务逻辑相比,使用jQuery 选择器来进行操作代码更简单且拥有完善的代码检测机制。jQuery 选择器根据

2020-06-30 10:12:06 78

原创 Uncaught TypeError: Assignment to constant variable 错误

ES6标准引入了新的关键字const来定义常量,const与let都具有块级作用域:使用const定义的常量,不要修改它的值;这个错误可能就是修改了常量引起的错误;但是某些浏览器不报错,但是无效果!解决办法:改成let进行声明...

2020-05-15 21:36:24 1572

原创 iOS视频压缩问题

具体操作如下-(void)handleVideoAccroding:(NSURL *)originFilePath{ NSString *cachesPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) lastObject]; NSString *outpu...

2020-05-06 11:48:23 837

原创 iOS 获取视频的某一针和获取视频名字

#pragma mark 获取视频的某一针- (UIImage*)getThumbnailImageForVideo:(NSURL *)videoURL atTime:(NSTimeInterval)time { AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoURL options:nil]; NSPa...

2020-05-06 11:45:55 224

原创 iOS获取视频文件大小和时长

1 、获取网络链接的视频大小和时长AVURLAsset *asset = [AVURLAsset URLAssetWithURL:url options:nil];// url:网络视频的连接 NSArray *arr = [asset tracksWithMediaType:AVMediaTypeVideo];// 项目中是明确媒体类型为视频,其他没试过 CGSize vide...

2020-05-06 11:43:12 4002

原创 UIButton中的图片和文字实现左对齐

UIButton setImage 和 setTitle之后,默认的 image和title 对齐方式是居中,由于 title 长度不固定,所以如果要几个这样有image有title的按钮纵向排列对齐,无论你怎么调整 imageEdgeInsets和titleEdgeInsets,都有可能导致前面图片对得不整齐,设置如下:btn.contentHorizontalAlignment =UIC...

2020-05-06 11:32:07 507

原创 视图添加四边阴影效果

#pragma mark 视图添加四边阴影效果(void)addShadowToView:(UIView *)shadowView color:(UIColor *)theColor {// 阴影颜色shadowView.layer.shadowColor = theColor.CGColor;// 阴影偏移,默认(0, -3)shadowView.layer.shadowOffset...

2020-05-06 11:27:20 86

原创 关于UICollectionView 无法展示头部和尾部问题

之前有个需求 ,让实现九宫格 ,然后自己就封装了一个layout ,但是后来需求让加一个头部和尾部,实现了没有展示,最后发下问题:我自己封装的layout 是继承UICollectionViewLayout,没有添加对于的heard和bottom;应改成UICollectionViewFlowLayout进行操作,下面说一种具体实现1 #pragma mark -- 注册头部视图 ...

2020-05-06 11:20:13 420

原创 关于ShareSDK升级到最新版问题

稍等

2020-05-06 11:09:07 849 2

原创 ios 系统消息通知

系统消息通知UIApplicationDidBecomeActiveNotification ------ 后台进前台通知UIApplicationWillTerminateNotification ------- 应用在前台,双击Home键,杀掉调用 ,但是应用在后台,双击Home键, 再终止应用不会被通知UIApplicationWillResignActiv...

2019-09-04 18:45:21 264

原创 iOS valueForKeyPath基本用法

1、valueForKeyPath可以获取数组中的最小值、最大值、平均值、求和。代码如下: NSArray *array = @[@"10", @"20", @"40", @"50", @"5", @"15"]; //总和 CGFloat sum = [[array valueForKeyPath:@"@sum.floatValue"] floatValue]; CG...

2019-09-04 16:24:55 116

原创 iOS 后台进入前台和进入后台通知

1 、注册通知//后台进前台通知 UIApplicationDidBecomeActiveNotification [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didBecomeActive) name:UIApplicationDidBecomeActiveNotification ...

2019-09-04 15:49:46 4162 2

原创 ios Reading from private effective user settings

之前写了一个UITextField,点击激活键盘的时候,报 Reading from private effective user settings这个问题 ,解决办法1 、在Xcode顶部菜单栏选择:Product --> Scheme --> Edit Scheme (或者直接点击停止项目 右边进行选择)2 、在左边的菜单栏中选择:Run --> Arguments3...

2019-09-03 17:29:45 270

原创 NSURLSession使用

1 get请求 //1.创建NSURLSession对象(可以获取单例对象) NSURLSession *session = [NSURLSession sharedSession]; //2.根据NSURLSession对象创建一个Task NSURL *url = [NSURL URLWithString:@"url"]; NSURLRequest *requ...

2019-09-02 17:24:14 148

原创 iOS 添加水印

1 、创建view : LHWaterMarkView 具体实现LHWaterMarkView.h 中/** 设置水印 @param frame 水印大小 @param markText 水印显示的文字 */- (instancetype)initWithFrame:(CGRect)frame WithText:(NSString *)markText;LHWaterMark...

2019-08-30 14:56:47 857

原创 iOS键盘升起和消失通知

1 、添加通知和对应方法 如下- (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor = [UIColor whiteColor]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyb...

2019-08-30 13:58:14 112

原创 ios中extern和extern "C"

extern在一个项目中必须保证函数、变量、枚举等在所有的源文件中保持一致,除非指定定义为局部的。一个全局变量在所有的模块当中只能被声明一次,否则会出现链接错误。但是可以声明很多次,且声明必须保证类型一致。用 extern 声明时一个变量时,并不是定义一个变量,也不会为变量分配内存空间。extern 是 c/c++ 语言中表明函数和全局变量作用范围(可见性)的关键字,该关键字告诉编译器,其...

2019-08-07 10:29:29 793

原创 FOUNDATION_EXTERN与UIKIT_EXTERN

Xcode进行APP项目开发,在项目开发工程中经常使用宏定义,如下使用:FOUNDATION_EXTERN NSString *const LHserId;UIKIT_EXTERN const NSInteger LHCount;这些宏定义的前缀,FOUNDATION_EXTERN与UIKIT_EXTERN有什么区别呢?1、首先看下FOUNDATION_EXTERN的定义:#if de...

2019-08-07 10:24:02 480

原创 iOS项目统计总代码行数

打开终端,用cd命令 定位到工程所在的目录,然后调用以下命名即可把每个源代码文件行数及总数统计出来:find . "(" -name "*.m" -or -name "*.mm" -or -name "*.cpp" -or -name "*.h" -or -name "*.rss" ")" -print | xargs wc -l其中 -name “*.m” 就表示扩展名为.m的文件...

2019-07-04 15:54:56 176

原创 npm修改或切换镜像地址

第一种方法:用代码更改npm的配置文件npm config set registry http://registry.npm.taobao.org这段代码即将镜像改为淘宝镜像第二种方法:使用nrm1、安装 nrm npm install -g nrm 如图2、查看镜像列表 nrm ls 如图3、切换镜像nrm use taobao4、用nrm添加自己的镜像地址nrm...

2019-07-04 11:36:40 3813

原创 Could not find a version that satisfies the requirement jupyter (from versions: )错误

用pip3 安装 jupyter notebook 的时候 ,报 下面的错误Collecting jupyter Could not find a version that satisfies therequirement jupyter (from versions: ) No matching distribution foundfor jupyter是因为网络的问题,要使用...

2019-06-20 20:19:40 10525 12

原创 VS Code实现智能提示

利用Typings为Visual Studio Code实现智能提示功能1 、全局安装typings终端输入npm install -g typings2、 使用typings安装相关代码提示包先进入你的react-native项目中,在项目的根目录下: 终端输入typings install dt~react-native --save --g安装完成后VSCode的根目录下会...

2019-06-20 11:25:55 5577

原创 使用VSCode运行React Native项目

准备工作:安装 VSCode搭建React Native环境1、创建React Native项目创建文件并进入RnDemo mkdir RnDemo创建项目 react-native init RnDemo2、用VSCode配置安装 如图(这是我根据自己需要添加的)3、添加项目 点击打开 如图4、添加配置然后会出现下图配置文件选择如图最后运行(1)可...

2019-06-19 11:35:16 4490

原创 Mac 安装Jupyter Notebook和使用Jupyter Notebook

本文在mac 终端下用pip进行安装,首先必须安装了pip 如果未安装 可以点击这里1 打开终端输入 pip3 install jupyter 如图2 、终端输入 IPython -V 如图3 、具体使用进入安装目录 我的目录是 /usr/bin/pythoncd /usr/bin/python然后 输入 python3 -m IPython notebook会打...

2019-06-19 10:41:52 14193 4

原创 -bash: pip: command not found 错误

今天 安装用 pip 安装Jupyter Notebook的时候 报如下错误-bash: pip: command not found错误是因为 pip未安装解决办法 :运行Python的安装工具安装pipsudo easy_install pip然后输入密码 回车如图成功...

2019-06-19 10:03:16 15002 4

原创 react native ios打包

最近起了一个新的项目,让用react native ,下面学习下打包:因为当我们需要发布App到App Store的时候就需要打包,使用离线的js代码和图片。这就需要把JavaScript和图片等资源打包成离线资源,在添加到Xcode中,然后一起发布到App Strore中。打包离线资源需要使用命令react-native bundlereact-native bundle1 创建目录b...

2019-06-13 18:02:13 214

原创 Mac下安装gradle和配置gradle环境变量

1、首先 配置Java环境配置Gradle之前要确保安装了Java环境,要求在JDK 1.6以上,并且配置了环境变量JAVA_HOME,查看Java版本可以在终端输入java -version显示以下信息 如图2、下载安装Gradle(1)可以直接去官网下载 地址:https://gradle.org/install(2)可以用Homebrew安装 brew install g...

2019-06-13 17:29:50 3987 1

原创 React Native ios打包 执行react-native bundle 报错

React Native ios打包 ,执行react-native bundle XXXX的时候 报错:如下Command bundle unrecognized. Make sure that you have run npm install and that you are inside a react-native project.使用npm -v查看当前npm版本 如图执行...

2019-06-13 15:18:03 395

原创 brew install node 报错:Error: No such file or directory @ dir_chdir Bottle installation failed:

在终端输入 brew install node 回车 报错如下图brew install node==> Installing dependencies for node: icu4c==> Installing node dependency: icu4c==> Downloading https://homebrew.bintray.com/bottles/ic...

2019-06-05 09:46:42 3709

转载 Linux系统32位与64位数据类型长度比较

Linux系统32位与64位GCC编译器基本数据类型长度对照表GCC 32位sizeof(char)=1sizeof(double)=8sizeof(float)=4sizeof(int)=4sizeof(short)=2sizeof(long)=4sizeof(long long)=8sizeof(long double)=12sizeof(complex long doub...

2019-05-31 14:35:23 627

转载 swift 初篇

本章内容包括:简单值(Simple Values)控制流(Control Flow)函数和闭包(Functions and Closures)对象和类(Objects and Classes)枚举和结构体(Enumerations and Structures)协议和扩展(Protocols and Extensions)错误处理(Error Handling)泛型(Generic...

2019-05-31 14:32:14 44

原创 Swift - 构造器的简单总结

1 构造器 : 如下图 我们会发现代码会出现错误 为什么? 我们知道类的构造器执行了三步:1 、设置子类声明的属性值2、 调用父类的构造器3、 改变父类定义的属性值。出错的原因是父类的init函数中调用了被子类所覆盖的函数,而编译器发现子类此时还没有完成初始化,这种情况下正确的方法是最后调用父类的初始化init函数...

2019-05-31 14:21:54 45

原创 ios 拉起小程序 弹框报错has_no_permission errcode :-10007

拉取微信小程序的时候报这个错误是因为app没有和小程序关联的原因 ;如图:链接:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=21526646385rK1Bs&token=cf517f058bd4d896013721...

2019-05-07 17:30:24 3060

原创 git clone 文件时报错 RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54

在我git clone 项目的时候 出现了如下错误 :error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54fatal: The remote end hung up unexpectedlyfatal: early EOFfatal: index-pack failed解决办法:打开Find...

2019-04-24 10:25:44 8116

LHNSURLSessionDemo.zip

本demo是使用了官方自带的NSURLSession类,实现了 get 请求 、post请求 、简单的下载、断点下载 、下载监听、文件上传 和 AF进行下载

2019-09-02

iOS UICollectionView 实现卡片效果

本demo使用UICollectionView实现了卡片效果,自定义了UICollectionViewFlowLayout,可以修改UICollectionViewFlowLayout的配置使卡片展现不同效果

2018-11-08

oc_swift.zip

swift和oc混编demo,通过此demo可以知道oc和swift相互调用和引用 具体博客地址https://blog.csdn.net/u013983033/article/details/110121212

2020-11-25

ios webView获取html标签

加载webView实现代理 在代理方法中获取html标签的需求 ,对标签中的url进行操作

2018-10-15

ios多线程开发的常用四种方式和基本使用

ios多线程开发的常用四种方式和基本使用,pthread、NSThread、NSOperation\NSOperationQueue、GCD

2018-11-22

ios WKWebView 的使用和交互

本demo是WKWebView的基本使用和交互 ,实现了原生调用js的方法、js调用原生的方法、通过拦截进行交互的方法;修改内容 加入沙盒 / /加载沙盒 不带参数 // NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); // NSString * path = [paths objectAtIndex:0]; // path = [path stringByAppendingString:[NSString stringWithFormat:@"/app/html/index.html"]]; // NSURL *url = [NSURL URLWithString:[[NSString stringWithFormat:@"file://%@",path] stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLFragmentAllowedCharacterSet]] relativeToURL:[NSURL fileURLWithPath:NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES).firstObject]]; // [self.wkView loadFileURL:url allowingReadAccessToURL:[NSURL fileURLWithPath: [paths objectAtIndex:0]]]; // 带参数 /* NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString * path = [paths objectAtIndex:0]; path = [path stringByAppendingString:[NSString stringWithFormat:@"/app/html/index.html"]]; NSURL * url = [NSURL fileURLWithPath:path isDirectory:NO]; NSURLComponents *urlComponents = [NSURLComponents componentsWithURL:url resolvingAgainstBaseURL:NO]; [queryItemArray addObject:[NSURLQueryItem queryItemWithName:@"version" value:[[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"]]]; [urlComponents setQueryItems:queryItemArray]; [self.wkView loadFileURL:urlComponents.URL allowingReadAccessToURL:[NSURL fileURLWithPath: [paths objectAtIndex:0]]]; */

2018-11-13

libsted++.zip

Xcode10升级到10.0之后 会报 clang error:library not found for -lstdc++.6.0.9 这个错误 ,是因为Xcode升级到10.0之后,原有的stdc++.6.0.9被废弃,因此上传这个库 ,供出现这个问题的去下载

2019-08-30

ios定位CLLocationManager

本文使用了苹果自带的类来实现定位 和反地理编码,简单便捷

2018-10-16

常见的几种加密方法和实现

常见的几种加密方法和实现, SHA1、RSA、AES、 DES、MD5的具体实现

2018-11-27

ios 数据库 (FMDB使用)

此demo使用单例使用FMDB对数据库进行增、删、改、查;demo实现详细

2018-10-26

ios 百度地图定位

该项目从申请百度秘钥,到百度sdk集成 实现定位 反地理编码功能

2018-10-16

ios uicollectionview 横向滚动

ios 实现了一行或多行的横向滚动,可以修改成你想要的行数,每行显示截个;

2018-11-08

ios CoreData使用(封装)

本demo是数据持久化的一种CoreData,对CoreData进行了封装,实现了增删改查

2018-11-12

NSLock和@synchronized

通过简单的例子来说明NSLock和@synchronized的执行和加锁流程

2018-11-22

ios 常见手势

ios 常见手势的定义和实现动画,对各个手势进行了实现

2018-10-24

长按拖拽移动视图

ios项目,自定义视图,然后添加长按 长按视图进行移动

2018-10-12

ios 单例模式

ios单例模式的详细解释、两种方式实现单例模式,重写需要实现的方法

2018-10-31

textCocosPods

一个OC写的框架 里面使用了MVVM 还有MVVM的第三方工具等

2018-04-19

ios 数据持久化存储

ios 数据存储,数据持久化,包含Preference 、文件存储、归档、数据库 、 CoreData的使用

2018-10-26

ios uicollectionview实现瀑布流

本demo实现了规则的瀑布流和等宽的不规则高度的瀑布流

2018-11-14

NSPredicate用法

本demo详细讲解了NSPredicate的使用;例如正则表达的使用、把程序中的一个数组中符合数组中内容的元素过滤出来、其它字符串的使用 BEGINSWITH、ENDSWITH、CONTAINS IN、BETWEEN、和match混合使用 比较问题

2018-11-09

kv0的原理和使用

本demo简单的介绍了KVO的含义、原理、注意事项和具体代码

2018-11-14

ios webView获取高度

ios的UIWebView详解,定义、实现delegate、webView和js的交互、原生调用js、js调用原生,三种方法实现获取webView的高度

2018-11-07

ios UIWebView使用

ios的UIWebView详解,定义、实现delegate、webView和js的交互、原生调用js、js调用原生

2018-11-07

IOS app相互通信

此压缩包中包含两个app 的demo,用于实现两个app的跳转和传值,代码详细;主要是两个项目配置URL Scheme 和 info.plist 文件中的白名单

2018-10-23

ios 界面传值

本demo 实现了通过代理 、通知、block、属性来演示界面直接的传值

2018-10-29

LHDemo.zip

本demo详细描述了系统消息通知的调用,包含后台进前台通知 :UIApplicationDidBecomeActiveNotification 、应用在前台,双击Home键,杀掉调用 ,但是应用在后台,双击Home键, 再终止应用不会被通知 :UIApplicationWillTerminateNotification 、Home键按下通知 :UIApplicationWillResignActiveNotification 、进入后台通知 :UIApplicationDidEnterBackgroundNotification 、第一次点击icon启动项目的时候通知 :UIApplicationDidFinishLaunchingNotification 、内存警告的时候通知 :UIApplicationDidReceiveMemoryWarningNotification 、无论是改变时区还是改变时间 然后重回app的时候通知 :UIApplicationSignificantTimeChangeNotification 、如果只改变时区不改变时间的话不调用,只要改时间才通知 :NSSystemClockDidChangeNotification 、将要改变状态栏方向通知 : UIApplicationWillChangeStatusBarOrientationNotification 、UIApplicationStatusBarOrientationUserInfoKey 获取当前设备的旋转方向 、改变状态栏方向通知 :UIApplicationDidChangeStatusBarOrientationNotification 、将要改变状态栏frame通知 :UIApplicationWillChangeStatusBarFrameNotification 、改变状态栏frame通知 :UIApplicationDidChangeStatusBarFrameNotification 、UIApplicationStatusBarFrameUserInfoKey 获取当前设备的状态frame、在后台下载内容的应用程序的状态变化时候通知 :UIApplicationBackgroundRefreshStatusDidChangeNotification 、锁屏之后 解锁前的通知 :UIApplicationProtectedDataWillBecomeUnavailable 、在做iOS监听开屏时通知 :UIApplicationProtectedDataDidBecomeAvailable

2019-09-04

iOS 延迟加载

通过performSelector、NSTimer、sleep、GCD四种方法实现了延迟加载;可以根据自己情况选择使用那种延迟方法

2018-10-27

LHPreViewDemo.zip

本demo主要是使用了ios自带框架 QuickLook.FrameWork 中的 QLPreviewController来加载显示pdf 、 word 等文本 ,可以保存到icloud文件中,能进行分享等操作 ,可以一下加载多个文本文件进行展示

2019-08-30

ios 轮播图

iosUISCrollView的使用,只需要简单的几句代码 就能集成实现轮播图

2018-10-19

KVC的原理和使用

本demo讲解了KVC的原理和实现,包括定义,执行过程,异常处理,注意事项等

2018-11-16

LHWaterMarkDemo.zip

本demo封装一个View实现了给其它视图添加水印的效果,使用起来方便

2019-08-30

LHDemoValueForKeyPath.zip

本demo主要讲了几个valueForKeyPath基本用法,写了几个例子供参考学习

2019-09-04

线程之间通信

通过简单的例子实现了线程之间的通信,和常用的方法;

2018-11-23

文件的操作

本demo实现了文件/目录的创建、删除、拷贝、移动、判断文件是否存在、文件的读和写、文件的属性查看、遍历目录下的内容、NSFileHandle的使用

2018-12-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除