自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 iOS 高级面试--UI视图

UlTableView 相关一,重用机制1.iOS如何实现cell的重用机制?A1-A7使用相同的identifer,当tableView向上滑动,A1划出页面后,就被放入了重用池。当A7即将展示时,首先会在重用池中查看时候有相同identifer的cell可以被重用,如果有则直接取出使用,若无则创建一个新的cell。2.如何手动实现重用机制?ViewReusePool类的声明ViewReusePool类的实现dequeueReusableView函数实现addUsingV

2020-12-03 18:44:46 274 1

原创 iOS 之C语言如何快速了解关键字

本章基本概括1.了解关键字的基本概念2.了解数据类型关键字3.了解流程控制关键字一,关键字的基本概念关键词是被C语言赋予了特殊含义的单词关键字特征:全部都是小写关键字在开发工具中会显示特殊颜色**注意:**编译器会严格区分字母大小写且关键字不能用作变量名、函数名等C语言中一共有32个关键字void char int float doubleshort long signed unsignedstruct union enum

2020-12-02 16:51:45 138

原创 Flutter 移动端屏幕采集(录屏)应该怎么做

现如今随着 Flutter 的应用越来越广泛,纯 Flutter 项目也越来越多,本篇内容主要分享的是 Flutter 移动端(iOS + Android)的屏幕采集的实现概述在视频会议、线上课堂、游戏直播等场景,屏幕共享是一个最常见的功能。屏幕共享就是对屏幕画面的实时共享,端到端主要有几个步骤:录屏采集、视频编码及封装、实时传输、视频解封装及解码、视频渲染。一般来说,实时屏幕共享时,共享发起端以固定采样频率(一般 8 - 15帧足够)抓取到屏幕中指定源的画面(包括指定屏幕、指定区域、指定程序等).

2020-12-15 14:42:33 1499

原创 AssociatedObject 的源码解析分析底层实现原理

C++ 的析构函数应该理解为内存释放前的清理工作,而不是内存释放,内存释放是使用的 free 函数,还有 OC 的 dealloc 也是,最终真正的释放内存函数是 free,dealloc 也可以理解为是 free 函数调用前做清理工作的。前言使用 Category 为已经存在的类添加方法是我们很熟悉的常规操作,但是如果在 Category 中为类添加属性 @property,则编译器会立即给我们如下警告:Property 'categoryProperty' requires method 'c.

2020-12-12 18:54:44 319

原创 Swift 中类型别名的用途

什么是 typealias?当我们回忆那些 Swift 强大的语言特性时,很少有人会首先想到 typealias。然而,许多情况下类型别名会很有用。本文将简要介绍 typealias 是什么,如何定义它,并列出多个示例说明如何在自己的代码中使用它们。让我们开始深入了解吧!顾名思义,typealias是特定类型的别名。类型,例如Int、Double、UIViewController 或一种自定义类型。Int32 和Int8 是不同的类型。换句话说,类型别名在你的代码库里插入现有类型的另一个名称。例如:t

2020-12-11 13:33:54 258

原创 CSS面试题 前端基础知识

常考面试题如何理解语义化如何理解语义化如何理解语义化让人更容易读懂(增加代码可读性)让搜索引擎更容易读懂(SEO问题,让搜索排名靠前“钱”)正确的标签做正确的事情页面内容结构化哪些标签是块级元素?哪些标签是内联(行内)元素?哪些标签是块级元素?哪些标签是内联(行内)元素?哪些标签是块级元素?哪些标签是内联(行内)元素?块级(display:block/table):div、p、h1-h6、ul、ol、dl、li、header、footer、aside、section、article

2020-12-10 15:58:35 116

原创 论rubyMine调试cocoapods插件的使用方法

环境要求1.系统 ruby版本:ruby --versionruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin19]2.Mac的系统版本 macOS Catalina 10.15.53.安装 rvm工具 1. curl -sSL https://get.rvm.io | bash -s stable 2. rvm 安装完毕信息如下: Ruby enVironment Manager 1.29.10

2020-12-10 13:55:52 417

原创 OC对象的三种分类

object-c中的对象主要分为3种:instance对象(实例对象)class对象(类对象)meta-class对象(元类对象)instance对象instance对象就是通过类alloc出来的对象,每次调用alloc都会产生新的instance对象内存中存储着:isa指针其他成员变量class对象每个类对象在内存中有且只有一个class对象内存中存储着:isa指针superclass指针类的属性信息(@property)、类的对象方法信息

2020-12-09 21:26:47 446 1

原创 Puppeteer生成pdf

一 . 安装Puppeteernpm install puppeteer --unsafe-perm=true(要加--unsafe-perm=true否则会提示权限不足)二 . 安装Puppeteer依赖先根据服务器安装的系统安装相关Puppeteer依赖,防止启动Puppeteer失败三 . 生成pdf代码const puppeteer = require('puppeteer');const account = 'xxxx';const password = 'xxxxxx';mod

2020-12-09 19:45:30 397

原创 态度和能力谁轻谁重?

前言在现在这个社会中,有许多的问题一直在困扰着我们,在这些问题面前,有太多的因素影响,态度,能力,经验,人脉,我们从一开始的不以为然,到现在的慢慢麻木。早以分不清,什么是什么了,每一个人或多或少的都会犯下一些可大可小的错误,然后通过这些错误逐渐成熟,回过头才发现之前的错误那么的可笑。好吧,回到主题,在信息爆炸的如今,对于很多问题的原因,有人的个人的观点是热情和态度。命名啰嗦,不规范禁止这类写法,因为在一个func里跟到最后我们可能完全不知道a是个什么东西,又得跳回看var a = 1类型名要表达

2020-12-09 17:00:29 82

原创 当iOS被查岗后应该怎么办?

前言恋爱期间的男女难免会恨不得知道对方时时刻刻在做些什么,是否在想自己,为了维护自身的亲密关系经常采用语音、视频电话等方式来实现,但这两个方式并不是一直有效。「查找」功能是 iOS 上一款旨在用于定位设备、朋友位置功能的 APP,如果使用得当,iOS 中的「查找」也很适合作为查岗的延伸。本篇文章不讨论背后的道德伦理关系,仅仅关注潜在的几种技术上的对抗方式,希望不会影响到读者之间的亲密关系。查找查找是 iOS 中系统级的 APP,可以实时查询朋友的位置,即使在对方未开启该 APP 的时候,市面上应

2020-12-08 16:25:53 204

原创 iOS | 事件传递及响应链

一、述试想一下假如你是一台手机????,当有人触摸了屏幕之后,你需要找到他具体触摸了什么东西,他可能触摸是一个按钮,或一个列表,也有可能是一个一不小心的误触,你会设计一个怎么样的机制和系统来处理呢?假如有两个按钮重叠了,或者遇到在滚动列表上需要拖动某个按钮的情况,你设计的机制能正常的运作嘛?在 iOS 中系统通过 UIKit 已经为我们设计好了一套方案,也是本文浅谈的内容:iOS 中的事件传递及响应链机制。二、谁来响应事件在 UIKit 中我们使用响应者对象(Responder)接收和处理事件。一个响

2020-12-08 15:21:19 232 1

原创 iOS 内存五大区讲解

在iOS中,大家平常经常说堆区,栈区,其实这些都是存在虚拟内存虚拟内存可以主要分为五个大区(堆区、栈区、全局区、常量区、代码区)接下来我们就开始一个一个的开始讲解它们。一,堆区(heap)是由程序员分配和释放,用于存放运行中被动态分配的内存段。大小不定,可增加和缩减优点:灵活方便,数据适应面广泛缺点:效率降低...

2020-12-05 13:17:17 608 1

原创 iOS给你不一样的内存管理

内存布局IOS的内存布局除了我们知道的内存五大区,还有内核区和保留区,我们知道虚拟内存分配了4GB的空间,前面3GB分配给了保留区和五大区,剩下的1GB是给内核区使用的内核区是用来给系统内核操作处理的区域,保留区是给系统处理等内存管理方案ARC和MRC在早期的苹果系统里面是需要我们手动管理内存的,手动内存管理遵循谁创建,谁释放,谁引用,谁管理的原则IOS5之后苹果引入了ARC(自动引用计数),ARC是一种编译器特性,只是编译器在对应的时间给我们插入了内存管理的代码,其本质还是按照MRC

2020-12-02 19:54:48 194

原创 iOS之Objective-C所占字节的大小

iOS的Objective-C在不同数据类型中所占字节的大小*如下图

2020-11-30 14:39:18 266

空空如也

空空如也

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

TA关注的人

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