E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
iOS-
iOS-
常用框架解读
架构:框架.png一、框架&架构作用模块化分层解耦降低代码重合度二、图片缓存框架怎样设计一个图片缓存框架?image.png2.1图片读写图片通过什么方式进行读写,过程怎样的?以图片URL的单向Hash值作为Keyimage.png读取流程2.2内存设计内存的设计上需要考虑哪些问题存储的空间大小Size,根据图片的大小分为不同的存储区域,例如:使用频率高占空间小的会保存的张数多,占内存大的图片保存
木子奕
·
2023-04-10 07:57
Swift-进阶 03:值类型 & 引用类型
Swift进阶之路文章汇总本文主要介绍为什么结构体是值类型,类是引用类型值类型前提:需要了解内存五大区,内存五大区可以参考这篇文章
iOS-
底层原理24:内存五大区,如下所示image栈区的地址比堆区的地址大栈是从高地址
响彻天堂
·
2023-04-10 05:16
iOS-
利用OpenCV Template Matching识别视频中的特定物体
在视频或计算机视觉方面的应用中,有时需要识别视频中的特定物体。比如科幻片《头号玩家》中,反派的无人机在寻找主角车辆时,通过匹配之前拍摄的车辆特征图片来识别,并追踪打击。在新的iOS版本中,可以利用CoreML+Vision根据训练好的模型来识别,但此文介绍的是利用OpenCV库的TemplateMatching来识别,以应付一些简单的场合。我们最终要实现的是在视频中识别苹果Logo(这个Logo是
炑哥
·
2023-04-10 04:27
iOS-
排序
数组里面的(字典对象)排序和对比去重复01.(可变数组)[self.tableview.dataArrayaddObjectsFromArray:self.liveCommentList];[parrayaddObjectsFromArray:self.tableview.dataArray];[parraysortUsingComparator:^NSComparisonResult(id_No
不要动
·
2023-04-10 01:37
iOS-
解决更新到Xcode11Xcode12后上传App Store一直卡住的问题
我是更新到Xcode12遇上卡死问题,用这个方法处理后,上传包也上传了一个半小时才上传上去,之前上传失败的都没等到这么久就给撤销了,所以不清楚是这个方法解决的,还是我之前等的时间太少了。记录下来,分享给大家,万一有用呢。更新到Xcode11之后,在上传AppStore过程中发现在Uploading界面一直卡在AuthenticatingwiththeAppStore…试了好几次,换了好几个时间都是
HanZhiZzzzz
·
2023-04-09 21:51
【
iOS-
系统框架】
文章目录前言47.熟悉系统框架CoreFoundation框架其他框架要点48.多用块枚举,少用for循环for循环NSEnumerator遍历快速遍历基于块的遍历方式要点49.对自定义其内存管理语义的collection使用无缝桥接要点50.构建缓存时选用NSCache而非NSDictionaryNSCacheNSCache实例要点51.精简initialize与load的实现代码loadini
神奇阿道和小司
·
2023-04-09 19:01
ios
objective-c
xcode
分类
iOS-
底层原理11:消息流程分析之慢速查找
在上一篇文章
iOS-
底层原理10:消息流程分析之快速查找中,分析了消息快速查找流程,如果快速查不到,则需要进入慢速查找流程,本文将对此进行分析。
AcmenL
·
2023-04-09 07:37
iOS-
网络请求错误码
NSErrorcodesintheCocoaerrordomain.enum{NSFileNoSuchFileError=4,//文件不存在NSFileLockingError=255,//未能得到一个锁文件NSFileReadUnknownError=256,//读取错误,原因不明NSFileReadNoPermissionError=257,//读取错误是因为权限问题NSFileReadInv
malgee
·
2023-04-08 21:41
iOS-
获取字符串、富文本的高度
一、获取字符串的高度-(CGFloat)getStringHeightWithText:(NSString*)stringwidth:(CGFloat)widthfont:(UIFont*)font{CGSizesize=[stringboundingRectWithSize:CGSizeMake(width,MAXFLOAT)options:NSStringDrawingUsesLineFrag
zwing
·
2023-04-08 07:00
IOS-
逆向开发Cycript/adv-cmds的使用与编写
CycriptCycript是Objective-C++、ES6(JavaScript)、Java等语法的混合物官网:http://www.cycript.org/文档:http://www.cycript.org/manual/通过Cydia安装Cycript,即可在iPhone上调试运行中的APPimage.png开启Cycriptcycript-p进程IDcycript-p进程名称取消输入:
那位小姐
·
2023-04-08 05:14
iOS-
底层原理 17:类的加载(上)
iOS底层原理文章汇总在上一篇
iOS-
底层原理16:dyld与objc的关联文章中,我们理解了dyld与objc是如何关联的,本文的主要目的是理解类的相关信息是如何加载到内存的,其中重点关注map_images
Style_月月
·
2023-04-07 23:49
iOS底层原理
类的加载
iOS
底层
原理
iOS-Block源码分析
前言
iOS-
深入研究Block这篇文章结合实例介绍了Block的类型,循环引用等问题,接着我们通过Block的源码分析一下,它的底层是怎么操作的?
似水流年_9ebe
·
2023-04-07 18:36
iOS-
纯代码,10天高仿内涵段子
9.16日提示修复了一下首页因为数据原因引起的崩溃问题。内涵段子服务数据结构复杂,有些判断逻辑可能不是很严谨,造成了崩溃,大家可以下载最新版本的介绍:花了两周的闲余时间模仿了一下今日头条旗下的iOS端app内涵段子,如果喜欢的话请给个star。(8.30-9.11)这个项目是用OC编写,如果有的朋友已经下载下来看了这个项目,就会意识到这个项目没有一个storyboard或者是nib,不是因为不喜欢
_小和
·
2023-04-07 16:11
iOS
ios开发
app
iOS-
静态库和动态库的创建和使用
应用场景:如果我们有些功能要给别人用,但是又不想公开代码实现,这时候我们可以打包成库。库分为静态库和动态库:静态库:以.a和.framework为文件后缀名。动态库:以.tbd(之前叫.dylib)和.framework为文件后缀名二者区别:静态库:链接时会被完整的复制到可执行文件中,被多次使用就有多份拷贝。动态库:链接时不复制,程序运行时由系统动态加载到内存,系统只加载一次,多个程序共用(如系统
zwing
·
2023-04-07 13:02
iOS-
非AppDelegate类监听程序状态
当App状态改变的时候相应的方法会被调用;如果你的类不是AppDelegate类,那么该类如何知道App的各种状态变化,以及如何使用这些函数呢?答案是使用NotificationCenter来通知。图1通过通知来注册程序的状态变化在UIApplication的扩展extension有我们通知状态相应的名称,如图2图2最后关于程序各个状态的表述参考:https://www.jianshu.com/p
重识
·
2023-04-07 10:59
iOS-
开发进阶07:Module与Swift库
iOS开发进阶文章汇总目录一、Module简介二、分析Module文件三、SwiftFramework中使用Module四、Swift静态库合并五、OC代码映射到Swift的方式六、Module相关的BuildSetting参数总结一、Module简介Module(模块)-最小的代码单元。一个Module是机器代码和数据的最小单位,可以独立于其他代码单位进行链接。通常,Module是通过编译单个源
differ_iOSER
·
2023-04-07 04:28
iOS-
图文混排方案-2种方案
ios的图文混排有两种方案1.使用NSTextAttachment-(NSMutableAttributedString*)createTextImage:(NSString*)textwitImage:(NSString*)imageName{NSMutableAttributedString*scaleStr=[[NSMutableAttributedStringalloc]initWithS
梵虚
·
2023-04-07 00:02
iOS-
打包上架ITMS-90076: Potential Loss of Keychain Access警告
最近一个做前端的朋友请我帮忙上架一个应用。用ApplicationLoader提交了iPa包,然后开始日常等待构建版本刷新。结果一个小时过去了,还是没有刷新出来,查看TestFlight版本状态,还是显示“正在处理”,然后查看邮件发现如下:开发者账号邮件这到底是一个提醒警告⚠️呢,还会一个修改通知呢?纠结要不要做修改,终于还是没有修改(其实是不知道该怎么改)。【结果】:事实证明:这只是应用的开发者
冻结的转身
·
2023-04-06 10:41
iOS-
底层分析之类的结构分析
类的结构分析本文主要分析iOS中的类以及类的结构,下面我们通过一个例子来探索类的结构我们定义一个WPerson类@interfaceWPerson:NSObject@property(nonatomic,copy)NSString*nickName;@property(nonatomic,strong)NSString*name;-(void)say666;+(void)sayNB;@end@im
沉默Coder
·
2023-04-05 22:13
iOS-
定时器相关
小摩丝.jpg定时器相关文档内容.1.一个play方法实现全屏炫酷倒计时的小demoiOS轮播图:CADisplayLink实现轮播和自定义动画的时间曲线算法(渐入渐出等)2.CADisplayLink&&双击home键的时候,动画不会暂停3.CADisplayLink的基础以及CADisplayLink与NSTimer的比较4.点击获取短信验证码倒计时(iOS)5.定时器的三种使用方式6.[iO
守护地中海的花
·
2023-04-05 21:32
iOS-
爱奇艺、以及QQ下拉和QQ邮箱的下拉加载动画
1.爱奇艺网络加载动画。首先我们先看一下,像爱奇艺这种网络加载动画,仔细的看一下其实也不是很难。aiqiyi.gif可以看成是两个部分:一部分是外面的残缺的圆环,一部分是里面的三角形。先是外面部分顺时针画了一个圆,然后再慢慢的消失,消失的过程中呢,里面的三角形同时也旋转。思路有了之后呢,我们来写代码:UIColor*color=[UIColorcolorWithRed:64/255.fgreen:
好治愈
·
2023-04-05 19:39
iOS-
直播本地部署(nginx-full)
Nginx安装nginxbrewinstallnginx运行nginx启动:sudonginx重启:sudonginx-sreload停止:sudonginx-sstop在浏览器中启动:http://localhost:8080如果启动nginx报错错误一:dyld:Librarynotloaded:>>/usr/local/opt/pcre/lib/libpcre.1.dylibReferenc
三月望龙
·
2023-04-05 03:11
ios-
梳理-常用软件之Charles Proxy
常用软件系列常用软件1,ApplicationLoader这个软件是做ios开发基本上必用到的软件,没有什么技巧点。在Xcode中OpenDeveloperTool可以找到,输入开发者账号户可提交ipa到你们的开发者账号中,用于进一步的测试或者直接发布到AppStore。2,CharlesProxyCharlesProxy做网络代理的,就是在App和网络之间,所有的网络请求、响应都必须经过Char
简鱼7819
·
2023-04-04 08:36
iOS-
字典转字符串,字符串转字典
字典转字符串#pragmamark字典转化字符串+(NSString*)dictionaryToJson:(NSDictionary*)dic{NSError*parseError=nil;NSData*jsonData=[NSJSONSerializationdataWithJSONObject:dicoptions:NSJSONWritingPrettyPrintederror:&parseE
biubiuboom
·
2023-04-04 00:17
iOS-
组件化 —— 路由设计思路分析
iOS组件化——路由设计思路分析一缕殇流化隐半边冰霜2017-03-0110:48:3117066原文前言随着用户的需求越来越多,对App的用户体验也变的要求越来越高。为了更好的应对各种需求,开发人员从软件工程的角度,将App架构由原来简单的MVC变成MVVM,VIPER等复杂架构。更换适合业务的架构,是为了后期能更好的维护项目。但是用户依旧不满意,继续对开发人员提出了更多更高的要求,不仅需要高质
MinggeQingchun
·
2023-04-04 00:53
iOS-OC
路由
组件化
ios-
结构体和类的区别
1、结构体只能封装属性,类却不仅可以封装属性也可以封装方法。如果一个封装的数据有属性也有行为,就只能用类了。2、结构体变量分配在栈,而OC对象分配在堆,栈的空间相对于堆来说是比较小的,但是存储在栈中的数据访问效率相对于堆而言是比较高3、堆的存储空间比较大,存储在堆中的数据访问效率相对于栈而言是比较低的4、如果定义一个结构体,这个结构体中有很多属性,那么这个时候结构体变量在栈中会占据很多空间,这样的
说不出口的喵
·
2023-04-03 13:39
unity打的
iOS-
遇到 dyld: Library not loaded: @rpath/libswiftCore.dylib 解决方法
```dyld:Librarynotloaded:@rpath/libswiftCore.dylibReferencedfrom:XXXReason:imagenotfound.```是说找不到一个图片。1、在BuildSetting->EmbeddedContentContainsSwiftCode设置为YES;2、在buildsettings,搜索runpathsearchpaths,增加一个
林火
·
2023-04-03 10:44
iOS-
底层原理 12:消息流程分析之快速查找
分析之前,首先了解什么是RuntimeRuntime介绍runtime称为运行时,它区别于编译时。编译时是源代码翻译成机器能识别的代码的过程,主要是对语言进行最基本的检查报错,即语法分析等,是一个静态的阶段。运行时是代码跑起来,被装载到内存中的过程,如果此时出错,则程序会崩溃,是一个动态阶段。runtime的使用有以下三种方式,其三种实现方法与编译层和底层的关系如图所示通过OC代码,例如[pers
响彻天堂
·
2023-04-02 21:13
iOS-
底层原理 10:strong©&weak底层分析 以及 方法签名和attribute简写含义
在clang编译的cpp文件中可以发现strong©&weak修饰的属性在编译的底层代码中是有区别的。修饰的属性strong©&weak底层分析在LGPerson中我们定义了两个两个属性,分别用copy和strong修饰image用clang将main.m文件编译成main.cpp,然后发现copy和strong修饰的属性的set方法是有区别的image这里就有疑问了,为什么cop
响彻天堂
·
2023-04-02 11:26
浅谈
iOS-
八大锁的使用
当多个线程同时操作同一资源数据时,为了防止ABCDEFG同时修改保存该内容,就得加个锁,使多个行程按照一定的次序去操作该资源一、NSLock加锁lock解锁unlock失败.pngNSLock*lock=[[NSLockalloc]init];dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),^{
你飞跃俊杰
·
2023-04-01 21:55
iOS-
常用方法
引入的头文件#import"sys/utsname.h"#import#import//手机运行内存#import//手机运行内存.h文件+(int64_t)memoryUsage;//获得当前App的内存占用情况+(double)availableMemory;//当前设备可用内存+(double)usedMemory;//当前任务所占内存/*手机型号*/+(NSString*)deviceVe
Y_3c23
·
2023-04-01 21:33
iOS-
isMemberOfClass isKindOfClass和 isSubclassOfClass
isMemberOfClass:表示调用该方法的类是否是参数类,只有当类型完全匹配的时候才会返回YES。isKindOfClass:表示调用该方法的类是否是参数类或者继承于参数类isSubclassOfClass:表示调用该方法的类是不是参数类的一个子类或者是这个类的本身isSubclassOfClass和isKindOfClass的作用基本上是一致的,只不过一个是类方法,一个是对象方法。-(BO
我是谁重要吗
·
2023-04-01 17:39
iOS-
多线程(一)基本概念
进程线程线程状态与生命周期iOS中多线程的实现方案进程理解为一个正在运行的应用程序,是系统进行资源分配和调度的基本单位,是操作系统结构的基础;每个进程都是独立的,它们运行在其专用且受保护的内存空间内;进程是一个实体;线程线程是进程的基本执行单元,负责代码的执行,线程很轻所以线程切换非常快并且开销小;进程的所有任务都在线程中执行;一个进程中只有一个主线程,在程序启动后自动创建,一个进程对应1-n个线
厦门_小灰灰
·
2023-04-01 13:21
iOS-
规避iOS审核4.3规则的重心
前言最近iOS卡审严重,很多小伙伴都被拒了,也有很多小伙伴收到4.3礼包,这里就说说4.3吧!规避4.3的重心,切断当前马甲包与以往马甲包的所有相似性关联;相似关联a.ipa包特征;b.开发者帐号;c.打包电脑;d.上传IP;e.材料相似;分项细述ipa包特征:包括有代码相似性,资源相似性;代码相似性解决办法:a.已有代码的混淆(改类名、改函数名、改属性名、垃圾代码、垃圾类等等)b.添加一些无用的
俊俊吖
·
2023-03-31 17:58
iOS-
开发常用的数据结构
一.在iOS开发中常用的结构体1.NSRange-一个范围结构体,location是位置,length是长度;{4,5},NSMakeRange(4,5);NSStringFromRange可以把它当NSString*返回2.NSSize-由一个CGSize被typedef过来,CGFloat是double类型typedef过来的,也由两个值组成:with宽度,height高度;{21,19};也
Lision丶
·
2023-03-31 14:08
总结
心得
收获
iOS
开发
数据结构
iOS-
开发架构模式
架构模式架构(Architecture)一词大概源于建筑学,也常指建筑物在其尺度上是如何依靠内部的支撑物相互结合而稳固构造的方式。软件架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象组件。各个组件之间的连接则明确和相对细致地描述组件之间的通讯,在实现阶段这些抽象组件被细化为实际的组件,比如具体某个类或者是对象。为什么要注重架构模式假如你不关心架构,那么总有一天,需要在同一个庞大的类中调
MinggeQingchun
·
2023-03-31 14:51
iOS-OC
iOS-
马甲包简介
一、马甲简介在ASO中马甲的意思就是内容与主APP一样,但icon图标、应用名不同,一般来说开发者的帐号是不同的,但也有的同鞋做的马甲开发者帐号都是同一样,不过这样的话,隐蔽性要差一些。做马甲有哪些好处1.替主号进行改版测试,将风险最小化。使用主App进行改版测试会存在很多弊端,马甲的好处是可以随意更改,一旦引发不良影响又不会造成很大的损失。如果测试效果良好,则可以对主App进行相应功能迭代。2.
鱼与熊掌不能兼得
·
2023-03-31 02:11
iOS-
手动切换横竖屏幕
1、首先根据需求,4个控制器,第一个控制器必须竖屏,第二个有个按钮可以切换横竖屏幕,第三个同上,第四个同第一个控制器需求,返回的时候都必须是竖屏,具体实现:1.1第一个控制器,只需要给个按钮实现导航栏跳转。1.2跳转到第二个控制器的进行切换操作,先用UIDevice+TFDevice这个分类实现具体方法。1.2.1把UIDevice+TFDevice这个方法写好完成后,还需要在AppDelegat
丁丁丁新华
·
2023-03-30 13:05
iOS-
底层探索 03:objc4-818.2 源码编译与调试
objc4-818.2源码下载地址:https://opensource.apple.com/tarballs/objc4/macOS10.15.6Xcode12.2objc4-818.2问题1:unabletofindsdk'macosx.internal'image.png解决:选择target->objc->BuildSettings->BaseSDK->选择macOS【target中的所有
王俏
·
2023-03-30 11:40
iOS-
常见问题记录
cocoapods相关执行验证命令podliblint--verbose--allow-warnings--use-libraries--use-modular-headers问题截图:解决措施:检测的源码在validator.rb文件如何找到它?终端gemwhichcocoapods输出:/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.6.1/lib/coco
liyoucheng2014
·
2023-03-30 09:38
iOS - NSString 与 Emoji
外的字数,于是求助度娘,以”NSString是否包含Emoji“为关键字找到不同的文章都给出了一模一样的解决方案,但实际测试中,这个方案随着iOS版本的更迭早已不再适用解决方案 在这篇文章里面:
iOS
hackswang
·
2023-03-29 11:48
iOS-
[UIApplication sharedApplication].keyWindow和[UIApplication sharedApplication].delegate.window
原创MinggeQingchun原文链接:https://blog.csdn.net/MinggeQingchun/article/details/98237511本人最近在重新做一个新项目,设置rootViewController时,发现[UIApplicationsharedApplication].keyWindow为nil,然后各种找原因,大概原因就是在用[UIApplicationsha
马金星
·
2023-03-29 05:31
iOS-
内存管理
面试题使用CADisplayLink、NSTimer有什么注意点?介绍下内存的几大区域讲一下你对iOS内存管理的理解ARC都帮我们做了什么?LLVM+Runtimeweak指针的实现原理autorelease对象在什么时机会被调用release方法里有局部对象,出了方法后会立即释放吗定时器CADisplayLink、NSTimer使用注意CADisplayLink、NSTimer会对target产
e297b14c9e53
·
2023-03-29 01:31
iOS-
圆环统计图(CircleChart)
前言:圆环统计图在我们工程中比较常用,正好我们公司项目中要用到,所以自己封装了一下,以方便以后复用。首先,我们看一下效果图:圆环效果图.png其次,实现原理也是比较简单的,底部是一个圆,上面同样位置现叠加一个有会值的圆,中间的文字引用第三方框架***UICountingLabel***使用起来也非常简单GBCircleChart*circleChart=[[GBCircleChartalloc]i
码渣
·
2023-03-28 02:10
iOS-
慢速方法查找
在
iOS-
快速方法查找中,如果没有找到方法实现,最终都会走到__objc_msgSend_uncached汇编函数,汇编源码实现.macroMethodTableLookupSTATIC_ENTRY__
Summit_yp
·
2023-03-26 07:03
iOS-
底层原理27:锁的原理
本文主要介绍常见的锁,以及synchronized、NSLock、递归锁、条件锁的底层分析锁借鉴一张锁的性能数据对比图,如下所示:锁性能对比可以看出,图中锁的性能从高到底依次是:OSSpinLock(自旋锁)>dispatch_semaphone(信号量)>pthread_mutex(互斥锁)>NSLock(互斥锁)>NSCondition(条件锁)->pthread_mutex(recursiv
AcmenL
·
2023-03-25 20:23
iOS - 贝塞尔曲线与CAShapeLayer,优酷播放按钮,引导页跳过按钮
iOS-
贝塞尔曲线与CAShapeLayer,优酷播放按钮,引导页跳过按钮在上看到一篇学习贝塞尔曲线的文章,可惜没有附带demo,所以自己写了一个。
yaoxp
·
2023-03-25 20:15
iOS-
了解一下方法调用和消息转发流程
前言发布此文章主要是对自己所学知识的总结通过文章的方式可以让自己对所学知识加深印象方便日后需要的时候查看,如果有不对的地方欢迎指出文笔不行,多多见谅更详细一点可以去看看霜神的神经病院Objective-CRuntime住院第二天——消息发送与转发整个方法调用流程共分为3个阶段:消息发送动态方法解析消息转发objc_msgSend()要说对象,我相信世界上没有比程序员的对象多的了,因为我们每天都会n
郭小弟
·
2023-03-25 17:05
iOS-
有效控制StatusBar样式
环境Xcode13.4前言有些项目会存在不同NavigationBar颜色不一致的场景,进而需要对StatusBar颜色进行特殊定制,而有时我们明明使用了自以为正确的方式,却达不到目标效果。那是因为,相同的方式在不同配置下,体现的效果不一致,因此理清StatusBar的各种设置很重要。Info.plist关于StatusBar的Key介绍一、UIStatusBarStyle(Statusbarst
达拉崩巴斑德贝迪卜多比鲁翁
·
2023-03-25 06:45
IOS-
基础控件之UIScrollView
UIScrollView是ios中常用的控件,这一篇主要记录一些使用和注意点1.UIScrollView常用属性CGPointcontentOffset表示、设置ScrollView的滚动位置(即与的间距值)CGSizecontentSize用来表示UIScrollView内容的尺寸,滚动范围()UIEdgeInsetscontentInset这个属性能够在UIScrollView的四周增加额外的
KevenT
·
2023-03-25 05:44
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他