
IOS开发
liudongshizhang
这个作者很懒,什么都没留下…
展开
-
iOS-在子类中调用父类私有方法
三方中在.h中声明的方法比较好重写,直接在子类里重写方法,如果需要重调父类原有方法可以用super直接调用。而一些私有方法并没有在.h中声明,这时我们也可以直接重写父类方法,但是相对于想要重调父类方法,就不能用super直接调用来实现。这里super只是一个编译器修饰符,是一个指向父类标志,并不是对象的父类实例。所以你再用super调用父类的私有方法是没有作用的。这时我们有几种选择可以帮我们实现父类私有方法的调用。首先可以用Method Swizzling(方法交换)来帮我们实现,但是我并不喜欢使用这个方原创 2021-12-17 16:37:36 · 2063 阅读 · 0 评论 -
iOS单元测试
单测介绍、基本逻辑测试iOS单元测试从入门到应用包括:什么是单元测试为什么要做单元测试如何进行单元测试测试准备公共方法的测试私有方法的测试性能测试运用OCMock进行测试异步测试UITest脚本录制引入单元测试遇到的问题这篇主要看点是利用通知进行异步测试...原创 2021-11-01 16:32:07 · 1476 阅读 · 0 评论 -
怎样让自定义OC对象支持copy和mutableCopy
自定义对象实现NSCopying和NSMutableCopying协议https://www.jianshu.com/p/f84803356cbb理解NSCopying和NSMutableCopying协议https://zhoon.github.io/ios/2014/09/14/NSCopying.html例如自定义Person类支持copy以及mutableCopyPerson.h//// Person.h// ObjectCopyDemo//// Created by li原创 2021-09-28 21:06:59 · 327 阅读 · 0 评论 -
iOS button的imageEdgeInsets和titleEdgeInsets原理
https://www.jianshu.com/p/034e61768c1f原创 2021-09-14 15:35:32 · 209 阅读 · 0 评论 -
TableView与CollectionView注册时的区别
TableView与CollectionView注册时的区别https://blog.youkuaiyun.com/Evelynzn/article/details/80222269为什么Tableviewcell创建时可以不判空:原创 2021-06-25 20:29:46 · 94 阅读 · 0 评论 -
Xcode调试总结
概述总体来看,关于Xcode调试的方法包括有以下几个部分:日志输出&&LLDB断点性能日志输出和LLDB关于日志输出,最先可能想到的是在代码编辑区的NSLog(),虽然在打印的时候很清晰,但是缺点就是在我们需要在想要打印的位置添加NSLog代码并重新运行项目,这样会比较耽误时间,影响开发效率,而我们在调试过程中用的比较多的是打断点,然后 p 或者 po 一下。这个 p 和 po 就是LLDB中的打印(print)命令LLDB命令行像下图中,在29行中打了断点,在控制台的右原创 2021-06-16 12:06:03 · 1003 阅读 · 0 评论 -
IOS Xcode常用快捷键介绍
Xcode 页面介绍Xcode页面主要分为以下五个部分:资源管理器快捷键介绍:上图从左到右分别为:项目导航器:在工程中添加、删除、分组以及管理文件、查看文件、或者在编辑取区编辑其内容git管理工具符号导航器:集成所有在工作区中定义的符号,从根本上说符号就是编辑器所能识别的东西,eg:OC类、结构体、枚举类型、全局变量等搜索导航器:可以对工作区中的所有文件进行搜索问题导航器:可查看在打开、分析以及构建项目过程中发现诊断、警告以及错误信息测试导航器:创建、管理、运行以及检查单元测试资源原创 2021-06-15 17:32:41 · 361 阅读 · 0 评论 -
IOS开发-设置导航栏和状态栏的状态和显示指定高度的控制器
改变导航栏背景颜色 (1)self.navigationController.navigationBar.barTintColor = [UIColor redColor];(2) 默认为白色 self.navigationController.navigationBar.barStyle = UIBarStyleDefault;改变导航栏字体颜色[self.navigationController.navigationBar setTitleTextAttributes:@{NSForegr原创 2021-06-11 15:37:34 · 568 阅读 · 1 评论 -
IOS开发-Charles的抓包的设置以及页面功能介绍
设置Charles抓包(包括HTTP,HTTPS请求的设置)https://blog.youkuaiyun.com/y277an/article/details/103573163Charles页面功能介绍:https://www.cnblogs.com/xiaocainiao920/p/8073073.html原创 2021-06-10 18:13:27 · 220 阅读 · 2 评论 -
IOS 开发-个人项目添加真机调试
如果不进行手动添加,用真机运行项目调试将会报:Signing for requires a development team. Select a development team in the Signing and Cap Editor错误。直接在Project的target上的【Signing & Capabilities】的 Team选项中 点击【Add Account…】,如图所示:在弹出的对话框里填上自己的Apple ID,即可。接下来有可能让输入邮箱的密码,只要正确的输入即可原创 2021-06-10 15:55:17 · 550 阅读 · 0 评论 -
IOS开发之沙盒机制和文件操作
引用于https://www.jianshu.com/p/d1715cad3d00沙盒也叫沙箱,英文standbox,其原理是通过重定向技术,把程序生成和修改的文件定向到自身文件夹中。每个iOS 应用程序在安装时,都会创建属于自己的沙盒文件,应用程序不能直接访问其他应用程序的沙盒文件,当应用程序需要向外部请求或接收数据时,都需要经过权限认证,否则,无法获取到数据。即在沙盒机制下,每个程序之间的文件夹不能互相访问。iOS系统为了保证系统安全,采用了这种机制。应用程序中所有的非代码文件都保存在沙盒中,比如图原创 2021-06-07 15:48:15 · 1307 阅读 · 0 评论 -
SDWebImage的基本使用
SDWebImage的作用该库提供了具有缓存支持的异步图像下载器。因此可以使用SDWebImage来实现UIImageView加载来自互联网的远程图片。基本使用下载完成之后首先,导入头文件:#import “UIImageView+WebCache.h”其次,利用其自带的方法对图片进行缓存加载。SDWebImage下载图片常用的方法:1. sd_setImageWithURL//图片缓存的基本方法[self.image1 sd_setImageWithURL:imagePath1];原创 2021-05-28 20:51:51 · 605 阅读 · 0 评论 -
IOS开发-WKWebView的使用、KVO监听例子
简单使用1.加载网页与UIWebview一样,仅需三步:记住导入(#import <WebKit/WebKit.h>)// 加载网页- (void)loadWbView { // 1.创建webView,并设置大小,“80”为状态栏高度 self.webVIew = [[WKWebView alloc] initWithFrame:CGRectMake(0, 80, self.view.frame.size.width, self.view.frame.size.heig原创 2021-05-28 14:51:44 · 2901 阅读 · 1 评论 -
IOS开发-MJExtension常用的数据类型和模型转化
1.字典转模型核心方法: mj_objectWithKeyValues:UserModel模型类,UserModel.h代码为://// UserModel.h// NSURLSessionDemo//// Created by liuwenbo on 2021/5/27.//#import <Foundation/Foundation.h>NS_ASSUME_NONNULL_BEGINtypedef enum { SexMale, SexFem原创 2021-05-27 18:41:40 · 2250 阅读 · 0 评论 -
IOS开发-触摸事件、手势识别、手势冲突
概览iPhone的成功很大一部分得益于它多点触摸的强大功能,乔布斯让人们认识到手机其实是可以不用按键和手写笔直接操作的,这不愧为一项伟大的设计。今天我们就针对iOS的触摸事件(手势操作)、运动事件、远程控制事件等展开学习:OS事件简介触摸事件手势识别手势冲突iOS事件在iOS中事件分为三类:触摸事件:通过触摸、手势进行触发(例如手指点击、缩放)运动事件:通过加速器进行触发(例如手机晃动)远程控制事件:通过其他远程设备触发(例如耳机控制按钮)下图是苹果官方对于这三种事件的形象描述原创 2021-05-18 21:35:46 · 991 阅读 · 0 评论 -
IOS开发中CALayer的详细说明
简介在iOS的应用程序中经常可以看到绚丽的动画效果,实现这些动画的过程并不复杂,本文中就从一下几个方面了解IOS动画的细节,分别是如何通过核心动画创建基础动画、关键帧动画、动画组、转场动画,以及如何通过UIView的封装方法对这些动画操作进行简化等。本文的主要内容包括有:CAlayer1. CALayer的简介2. CALayer的常用属性3. CALayer绘图的两种方式Core Animation(核心动画)1. 基础动画(平移、缩放、旋转)2. 关键帧动画3. 组动画4. 转场动原创 2021-05-18 18:08:56 · 803 阅读 · 1 评论 -
IOS开发-解决手势冲突问题
解决手势冲突问题:第一种:通过利用代理的方法https://blog.youkuaiyun.com/weixin_34217711/article/details/91382717第二种:通过设置手势的优先级https://blog.youkuaiyun.com/churk123/article/details/54315900原创 2021-05-17 10:56:14 · 364 阅读 · 0 评论 -
iOS开发-自定义控件的方式及注意
https://www.jianshu.com/p/7e47da62899c原创 2021-05-16 11:39:27 · 118 阅读 · 0 评论 -
IOS开发之——Modal原理和常规使用
IOS开发之——Modal原理和常规使用https://blog.youkuaiyun.com/Calvin_zhou/article/details/110931665弹出页面设置:UIModalPresentationStyle和UIModalTransitionStylehttps://blog.youkuaiyun.com/odyyy/article/details/89334999原创 2021-05-16 10:07:34 · 127 阅读 · 0 评论 -
IOS开发-大文件下载、断点续传、后台下载
iOS 大文件下载、断点续传、后台下载:https://blog.youkuaiyun.com/hero_wqb/article/details/80407478NSURLSession实现断点续传:https://www.bbsmax.com/A/lk5a0Bw2J1/断点续传(NSNSURLConnection):过期https://blog.youkuaiyun.com/stree7cleaner/article/details/51440774https://www.bilibili.com/video/BV1原创 2021-04-27 20:40:54 · 198 阅读 · 0 评论 -
IOS开发-保存文件时内存暴涨原因及解决方案
原因:把每次下载的二进制数据,累加到内存中https://www.bilibili.com/video/BV14J411T7cQ?p=97解决方案:每次接收的二进制文件数据后,直接保存到文件中https://www.bilibili.com/video/BV14J411T7cQ?p=98原创 2021-04-27 10:13:32 · 521 阅读 · 0 评论 -
IOS-多文件上传
多文件上传(不用AFNetworking)https://blog.youkuaiyun.com/a359798678/article/details/101953844iOS-AFNetworking参数和多文件同时上传【多文件上传】https://www.cnblogs.com/wangkejia/p/7587314.html原创 2021-04-25 14:19:22 · 295 阅读 · 0 评论 -
AFNetworking的简单使用
https://www.jianshu.com/p/62f76da40031原创 2021-04-24 20:33:06 · 240 阅读 · 0 评论 -
IOS开发-XML解析
iOS开发网络篇 一一 XML解析https://blog.youkuaiyun.com/m0_37989980/article/details/78825452视频:https://www.bilibili.com/video/BV14J411T7cQ?p=49原创 2021-04-23 15:46:10 · 128 阅读 · 0 评论 -
IOS-KVC模式下含有模型未定义属性同名字段的字典问题解决
https://www.itengying.com/articles/6c720285d54124原创 2021-04-17 16:43:18 · 131 阅读 · 0 评论 -
IOS-JSON数据的序列化与反序列化、JSON数据转模型
JSON数据的序列化与反序列化https://blog.youkuaiyun.com/mazaiting/article/details/79709266JSON数据转模型https://www.bilibili.com/video/BV14J411T7cQ?p=29原创 2021-04-17 15:00:26 · 130 阅读 · 0 评论 -
IOS-获取网络数据的方式
https://www.jianshu.com/p/61a147892d6c原创 2021-04-17 10:17:19 · 140 阅读 · 0 评论 -
UIWebView、WKWebView使用详解及性能分析
https://www.cnblogs.com/junhuawang/p/5759224.html原创 2021-04-15 20:40:59 · 172 阅读 · 0 评论 -
IOS-NSCacher缓存的详解与使用
iOS | 缓存NSCache详解https://blog.youkuaiyun.com/perry0528/article/details/91044144https://www.cnblogs.com/weiming4219/p/8186250.html原创 2021-04-15 14:30:58 · 143 阅读 · 0 评论 -
SDWebImage的用法及原理
简单用法:https://www.cnblogs.com/fyongbetter/p/5629647.html原理:https://www.cnblogs.com/zyb428/p/5260423.html调度步骤:https://www.jianshu.com/p/be9a0a088feb原创 2021-04-14 21:06:55 · 264 阅读 · 0 评论 -
IOS开发-消息循环
https://blog.youkuaiyun.com/ZCMUCZX/article/details/77015021?utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-1.control&dist_request_id=1328767.30600.16174593400482279&depth_1-utm_source=distribu原创 2021-04-03 22:20:37 · 112 阅读 · 0 评论 -
iOS开发-自动布局
https://www.jianshu.com/p/f6cf9ef451d9原创 2021-04-02 21:13:34 · 125 阅读 · 0 评论 -
ios开发-文字绘制
//画文字-(void)drawText:(CGRect)rect{ NSString *str = @"姜灵凤姜灵凤姜灵凤姜灵凤姜灵凤姜灵凤姜灵凤姜灵凤"; NSMutableDictionary *dict = [NSMutableDictionary dictionary]; //字体大小 dict[NSFontAttributeName] = [UIFont systemFontOfSize:30]; //设置颜色 dict[NSFor原创 2021-03-19 21:11:09 · 524 阅读 · 0 评论 -
iOS开发UI篇—ios应用数据存储方式(偏好设置)
https://www.cnblogs.com/wendingding/p/3775178.html原创 2021-03-17 21:15:12 · 110 阅读 · 0 评论 -
ios开发-自动滚动tableView到某行
https://www.jianshu.com/p/f5236ba3b32d原创 2021-01-12 21:04:39 · 226 阅读 · 0 评论 -
ios开发-监听键盘弹出事件(NSNotificationCenter)
https://www.bilibili.com/video/BV1EJ411T7At?p=95原创 2021-01-12 20:53:16 · 333 阅读 · 0 评论 -
ios开发-利用 transform 使视图平移、缩放、旋转
https://www.jianshu.com/p/b49f618c190e视频链接:https://www.bilibili.com/video/BV1EJ411T7At?p=16原创 2021-01-12 20:50:52 · 507 阅读 · 0 评论 -
iOS开发之通知中心(NSNotificationCenter)
https://www.cnblogs.com/iyou/p/3642070.html注意:必须先监听再发送通知原创 2021-01-12 20:10:47 · 244 阅读 · 0 评论 -
ios开发-UITableView中的数据修改和更新
https://www.bilibili.com/video/BV1EJ411T7At?p=72原创 2021-01-10 22:20:20 · 362 阅读 · 0 评论 -
ios开发-修改app启动图
https://www.cnblogs.com/liu-lang/p/6813107.html原创 2021-01-09 22:13:30 · 654 阅读 · 0 评论