首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
iOS基础知识
Study_Min
创建于2021-07-30
订阅专栏
iOS基础知识
等 3 人订阅
共37篇文章
创建于2021-07-30
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
离屏渲染探索
一、iOS渲染流程梳理 iOS开发中,将图像显示到屏幕上有两种方式: 1、正常渲染流程 2、离屏渲染流程 二、离屏渲染的性能问题 2.1 离屏渲染存在的性能问题 1、相比于正常的渲染流程,离屏渲染需要
JTNavigationController
效果的实现大致分3种方式 使用自定义navigationBar.淘宝,网易新闻,达令等使用的是这种 灵活度高,实现的效果好.但是缺点也明显,自定义的navigationBar使用起来没有原生的使用起来
多继承
1、组合方式 用 ClassC 添加 ClassA 、ClassB 成员变量 来调用 methodA、methodB; 2、协议protocol 设置 ClassA delegate 和 Classs
声明常量
1、FOUNDATION_EXPORT 字符串指针地址比较 2、extern 3、#define 调用 isEqualToString 的方法; 4、static 修饰局部变量: 延长局部变量周期,程
圆角
一般我们在iOS开发的过程中设置圆角都是如下这样设置的。 这样设置会触发离屏渲染,比较消耗性能。 注意:png图片 UIImageView 处理圆角是不会产生离屏渲染的。(ios9.0之后不会离屏渲染
addChildViewController
使用addsubView添加多个View,这些View有时候不需要全部用到,如果有由视图控制器来管理,在需要的时候显示,不需要的时候释放掉以此来节省内存。 而且还有一个好处就是切换视图控制器的时候可以
UIButton
扩大点击范围: 1、在 button 上添加一个view 增加点击事件 2、继承UIButton,实现如下效果: 3、在这个 Button 的 superview 里,重写 hitTest: 方法 点
UILabel
UILabel显示定时器文本的跳动问题解决方案: 在显示验证码计数时出现跳动和闪烁的问题。目前大多数用来实现定时器显示的控件都是UILabel。 在iOS9以前系统默认的英文字体是Helvetica,
UIView
一、UIView生命周期: 当 view 创建时 当 view 销毁时 注意: 可以看出上面方法中只会执行一次的方法有 removeFromSuperview、dealloc 两个方法,layoutS
AutoLayout
一、自动布局的原理 1、Constraints Change 激活,失活 创建约束,优先级 添加,移除视图 检测到改变后系统(Layout Engine) 会重新计算出布局,就会调用superview
UIApplication
注意: application:didFinishLaunchingWithOptions:: App 首次启动时调用,一般在这个函数里创建 window 对象,初始化 App 可能用到的第三方 SD
多线程
一、多线程方案 默认情况下,主线程占用1M,子线程占用512KB NSThread 面向对象的,手动创建线程,不需要手动销毁。子线程间通信很难。 GCD c语言,充分利用了设备的多核,自动管理线程生命
UIViewController
一、生命周期 分析 initWithNibName:bundle: 初始化UIViewController,执行关键数据初始化操作,非StoryBoard创建UIViewController都会调用这
NSString
1、继承关系 NSTaggedPointerString(栈区) ---> NSString __NSCFConstantString(数据常量区) ---> __NSCFString (堆区) --
RunTime
1、讲一下 OC 的消息机制 OC中的方法调用其实都是转成了objc_msgSend函数的调用,给receiver(方法调用者)发送了一条消息(selector方法名)objc_msgSend底层有3
RunLoop
1、RunLoop与NSTimer 一个比较常见的问题:滑动tableView时,定时器还会生效吗? 默认情况下RunLoop运行在kCFRunLoopDefaultMode下,而当滑动tableVi
WebView
多进程,在app的主进程之外执行: WKWebView为多进程组件(网络加载和UI渲染在其他进程中执行),也意味着会从App内存中分离内存到单独的进程中。 当内存超过了系统分配给WKWebView的内
https
HTTPS 的实现原理 HTTPS 协议之所以是安全的是因为 HTTPS 协议会对传输的数据进行加密,而加密过程是使用了非对称加密实现。但其实:HTTPS 在内容传输的加密上使用的是对称加密,非对称加
启动优化
一、启动流程 dyld: 动态链接器,可以用来装载Mach-O文件(可执行文件、动态库等) APP的可执行文件,同时会递归加载所有依赖的动态库 当dyld把可执行文件、动态库都装载完毕后,会通知Run
网络
一、网络层级 第一层:物理层,网络的物理形式,如电缆、光纤、网卡、集线器等; 第二层:数据链路层,相当于TCP/IP的链接层; 第三层:网络层,相当于TCP/IP里的网际层; 第四层:传输层,相当于T
下一页