自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 【vue setting.json】

vue setting.json

2022-07-14 16:40:54 2780 1

原创 【ARC规则】

引用计数式内存管理的思考方式就是思考ARC所引起的变化。自己生成的对象,自己所持有。非自己生成的对象,自己也能持有。自己持有的对象不再需要时释放。非自己持有的对象无法释放。当ARC有效时,id类型和对象类型必须附加所有权修饰符,一共有如下四种。__strong__weak__unsafe_unretained__autoreleasing__strong修饰符该类型的修饰符是id和对象类型的默认修饰符。当ARC无效时,该源码如下:__strong修饰符表示对对象的强引用。持有强引用的变量

2022-06-22 14:31:56 460

原创 【H5调用iOS原生高德定位】

H5调用iOS原生高德定位一.原生集成iOS SDK流程1、创建新应用进入控制台,创建一个新应用。如果您之前已经创建过应用,可直接跳过这个步骤。2、添加新Key在创建的应用上点击"添加新Key"按钮,在弹出的对话框中,依次:输入应用名名称,选择绑定的服务为“iOS平台SDK”,输入安全码 Bundle ID。需要注意的是: 1个KEY只能用于一个应用(多渠道安装包属于多个应用),1个Key在多个应用上使用会出现服务调用失败。在阅读完高德地图API服务条款后,勾选此选项,点击“提交”,完成 Ke

2022-04-25 17:44:00 1607

原创 【swift的派发机制】

swift的派发机制三种派发方式直接派发 (Direct Dispatch)函数表派发 (Table Dispatch )消息机制派发 (Message Dispatch )Swift 的派发机制指定派发方式 (Specifying Dispatch Behavior)三种派发方式编译型语言有三种基础的函数派发方式: 直接派发(Direct Dispatch), 函数表派发(Table Dispatch) 和 消息机制派发(Message Dispatch), 下面我会仔细讲解这几种方式. 大多数语言都

2022-03-21 10:01:53 1165

原创 【动态语言和静态语言】

动态语言和静态语言动态和静态语言的概念动态语言静态语言两者有缺点Objective-c说明补充说明动态和静态语言的概念动态类型语言:在运行期进行类型检查的语言,也就是在编写代码的时候可以不指定变量的数据类型。静态类型语言:静态类型语言:它的数据类型是在编译期进行检查的,也就是说变量在使用前要声明变量的数据类型,这样的好处是把类型检查放在编译期,提前检查可能出现的类型错误强类型语言,一个变量不经过强制转换,它永远是这个数据类型,不允许隐式的类型转换。举个例子:如果你定义了一个double类型变量a,不

2022-03-11 11:40:23 756

原创 flutter 常用命令行

flutter 常用命令行flutter常用命令flutter常用命令1.flutter doctor:检查flutter状态,了解环境配置的状态。2.flutter emulators:获取模拟器列表(iOS、Android模拟器)例如:available emulators:Pixel_2_API_29 • Pixel 2 API 29 • Google • androidapple_ios_simulator • iOS Simulator • Apple • iOSflutter e

2022-03-08 13:56:42 5741

原创 【ARM64:ARM64架构】

ARM64:ARM64架构1.ARMv8特色:2.执行状态3. ARMv8包含的寄存器4.数据类型5.异常模型6.A64汇编指令介绍:7.A64指令分类ARM64通用的架构知识1.ARMv8特色:(1) 超大的物理地址空间(Large Physical Address),提供超过4GB物理内存的访问;(2) 64位宽的虚拟地址空间(64-bit Virtual Addresing);(3) 提供31个64位宽的通用寄存器,可以减少对栈的访问,从而提高性能;(4) 提供16KB和64KB的页面,有

2022-03-04 10:52:54 2369

原创 【iOS 底层原理-runtime 二】

iOS 底层原理-runtime 二Class的结构方法缓存 cache_tClass的结构首先来看一下Class的内部结构代码struct objc_class : objc_object { // Class ISA; Class superclass; cache_t cache; // formerly cache pointer and vtable class_data_bits_t bits; // class_rw_t *

2022-03-04 10:33:18 354

原创 【c语言 共用体】

c语言 共用体1、共用体的概念2、共用体类型的定义共用体的应用访问共用体成员1、共用体的概念在编程过程中,有时需要使几种不同类型的变量存放到同一段内存单元中。例如,可以把一个整型变量,一个字符型变量,一个实型变量放在同一个地址开始的内存单元中。这样的话,不同类型的变量在内存中占据的字节数不同,但是都从同一个地址开始。也就是使用覆盖技术,几个变量互相覆盖。这种使几个不同的变量共同占用同一段内存的结构,称为“共用体”类型的结构。结构体变量占用的内存空间大小是其各个成员所占的字节长度的总和。如果同一时刻只

2022-03-03 10:37:52 3124

原创 【flutter 轮播图】

flutter 轮播图1. 安装插件2. 引入依赖3. 完整示例1. 安装插件配置flutter_swiper插件。dependencies: flutter: sdk: flutter flutter_localizations: sdk: flutter date_format: ^1.0.6 flutter_cupertino_date_picker: ^1.0.26+2 # 配置轮播图插件 flutter_swiper: ^1.1.6在pubs

2022-02-28 09:16:19 419

原创 【iOS底层原理-Runtime 一】

iOS 底层原理-Runtime 一isa的本质举列说明取值设值位域共用体isa_t源码isa中存储的信息及作用isa的本质每个OC对象都含有一个isa指针,__arm64__之前,isa仅仅是一个指针,保存着对象或类对象内存地址,在__arm64__架构之后,apple对isa进行了优化,变成了一个共用体(union)结构,同时使用位域来存储更多的信息。OC对象的isa指针并不是直接指向类对象或者元类对象,而是需要&ISA_MASK通过位运算才能获取到类对象或者元类对象的地址。源码中找到i

2022-02-25 14:01:46 2168

原创 【Swift 和 OC】

swift和ocswift和oc的区别Swift比Objective-C优势swift独有Swift调用OCOC调用SwiftSwift 选择器(selector)swift和oc的区别1,最明显的区别:OC一个类由.h和.m两个文件组成,而swift只有.swift一个文件,所以整体的文件数量比OC有一定减少。2,不像C语言和OC语言一样都必须有一个主函数main()作为程序的入口,swift程序从第一句开始向下顺序执行,一直到最后。(swift将全局范围内的首句可执行代码作为程序入口,swift也

2022-02-23 11:05:25 3299

原创 【如何在Mac上安装Java JDK及配置环境】

如何在Mac上安装Java JDK及配置环境1. 访问Java JDK 网站下载与安装(以JDK8为例)2. 检验是否安装成功3. 环境变量的配置1. 访问Java JDK 网站下载与安装(以JDK8为例)点击下载链接:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html下载安装jdk-8u212-macosx-x64.dmg macOS x642. 检验是否安装成功打开Mac终端输入 java -v

2022-02-16 10:17:34 4112

原创 【Xcode快捷键】

Xcode快捷键常用快捷键工程导航器:Command+1显示/隐藏导航器面板:Command+0显示/隐藏实用工具面板:Command+Option+0在辅助编辑器中打开文件:在项目导航器中选中文件执行Option+左键点击操作。搜索导航器(Find Navigator,也就是搜索):Command+Shift+F文件跳转栏:Control+6(键入方法/变量名+Enter跳转)快速打开: Command + Shift + O跳转栏和快速打开搜索输入快捷键程序中(Objective-C或C++编写).h

2022-02-11 10:12:46 2200

原创 【Swift 基础部分 函数】

Swift 基础部分函数函数的定义与调用多重返回值函数函数函数是一段完成特定任务的独立代码片段。你可以通过给函数命名来标识某个函数的功能,这个名字可以被用来在需要的时候“调用”这个函数来完成它的任务。Swift 统一的函数语法非常的灵活,可以用来表示任何函数,包括从最简单的没有参数名字的 C 风格函数,到复杂的带局部和外部参数名的 Objective-C 风格函数。参数可以提供默认值,以简化函数调用。参数也可以既当做传入参数,也当做传出参数,也就是说,一旦函数执行结束,传入的参数值将被修改。在 Sw

2022-02-11 09:12:07 319

原创 【Swift 基础部分集合 控制流】

Swift 基础部分集合类型集合(Sets)集合类型的哈希值集合类型语法控制流For-In 循环Switch不存在隐式的贯穿区间匹配复合型 Cases集合类型Swift 语言提供数组(Array)、集合(Set)和字典(Dictionary)三种基本的集合类型用来存储集合数据。数组是有序数据的集。集合是无序无重复数据的集。字典是无序的键值对的集。Swift 中的数组、集合和字典必须明确其中保存的键和值类型,这样就可以避免插入一个错误数据类型的值。同理,对于获取到的值你也可以放心,其数据类型是确定的。

2022-02-10 11:47:01 1083

原创 【Swift 基础部分元组】

基础部分元组可选类型if 语句以及强制解析可选绑定隐式解析可选类型Swift 包含了 C 和 Objective-C 上所有基础数据类型,Swift 还增加了 Objective-C 中没有的高阶数据类型比如元组(Tuple)。元组可以让你创建或者传递一组数据,比如作为函数的返回值时,你可以用一个元组可以返回多个值。元组元组(tuples)把多个值组合成一个复合值。元组内的值可以是任意类型,并不要求是相同类型。下面这个例子中,(404, “Not Found”) 是一个描述 HTTP 状态码(HTT

2022-02-10 08:44:21 613

原创 【Swift环境搭建与使用】

Swift环境搭建与使用直接AppStore中下载最新版本xcode即可使用Swift 的 playground接下来我们在应用文件夹打开 Xcode,打开后在屏幕顶部选择 File => New => Playground。(左边有个运行按钮,需要点击一下)直接AppStore中下载最新版本xcode即可使用Swift 的 playgroundSwift 的 playground就像一个交互的文档,用它来练手Swift很合适,写一句代码出一行结果(右侧),可以实时查看代码结果,非常方便学

2022-02-09 14:41:46 1027

原创 【Swift CopoaPods的使用】

Swift iOS:CocoaPods的使用开发需要添加第三方库,Swift的访问网络库Alamofire来举例。使用Alamofire进行网络请求开发需要添加第三方库,Swift的访问网络库Alamofire来举例。添加CocoaPods,有了CocoaPods,需要编写Podfile,写入Alamofire的名称和版本号:use_frameworks!target 'cnode' do pod 'Alamofire', '~> 4.4.0' ...end使用pod命令

2022-02-09 11:46:21 897

空空如也

空空如也

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

TA关注的人

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