Swift
文章平均质量分 58
shengkuiwang
这个作者很懒,什么都没留下…
展开
-
Swift_代码混淆
1. 新建相关文件新建文件confuse.sh和func.list创建文件方式如下:$ cd ~/Desktop/ceshi$ touch confuse.sh$ touch func.list最终结果如下:2. 导入文件至项目将创建的confuse.sh文件以及func.list文件导入项目最终结果如下3. 修改项目配置3.1 修改TARGETS配置如果没有RunScript。请点击红框内+进行新增RunScript内输入的文本$PROJECT_DIR/confuse.原创 2021-11-24 16:42:25 · 2826 阅读 · 0 评论 -
Swift_base64转化为Data_URL转化为Data
base64字符串转化为Data// base64 -> Data?let oldString = "base64字符串"let base64String: String = oldString.replacingOccurrences(of: "data:image/png;base64,", with: "")let base64EncodedData: Data? = Data(base64Encoded: base64String, options: Data.Base64Deco.原创 2021-10-20 20:07:03 · 1530 阅读 · 0 评论 -
Swift_WKWebView循环引用问题解决方法
1、创建一个新类WSKWeakScriptMessageDelegate代码示例如下:import UIKitimport WebKitclass WSKWeakScriptMessageDelegate: NSObject,WKScriptMessageHandler { weak var scriptDelegate:WKScriptMessageHandler! init (scriptDelegate:WKScriptMessageHandler) { su原创 2020-12-07 09:19:56 · 547 阅读 · 0 评论 -
Swift_指定位置切圆角
切圆角方法extension UIView { /** * 切圆角 * - Parameters: * - conrners * - radius 圆角弧度 */ func addCorner(conrners: UIRectCorner , radius: CGFloat) { let maskPath = UIBezierPath(roundedRect: self.bounds, byRoundingCorne.原创 2020-10-22 12:23:50 · 1176 阅读 · 0 评论 -
Swift_学习笔记_自动引用计数
Swift使用的自动引用技术ARC(Automatic Reference Count)这一机制来跟踪和管理程序的内存使用状况。Swift的ARC机制只是对于基于引用计数的对象采有效,对于基于值拷贝的,比如struct、enum是无效的。Swift提供了两种方法解决循环强引用问题:弱引用(weak reference)和无主引用(unowned reference)。对于生命周期内会变为nil原创 2017-08-29 16:28:16 · 480 阅读 · 0 评论 -
Swift_学习笔记_协议
协议:代理设计模式协议能够被类、枚举、结构体实现,满足协议要求的类、枚举、结构体被称为协议的是实现者。协议的语法在类、枚举、结构体的名称后加上协议名称,中间以冒号(:)分隔,即可实现协议,当实现多个协议时,多个协议间用逗号(,)隔开。 eg. class 类名:协议1,协议n{}如果类含有父类,则应当将父类放在所有的协议之前。 eg. class 类名:父类,协议1,协议n原创 2017-08-31 14:50:20 · 300 阅读 · 0 评论 -
Swift_学习笔记_类型转换
类型转换是指任意两个对象之间相互转换。这些类型可以是通过集成的父子关系,也可以是协议的耦合关系,甚至可以是任意类型之间的转换。1、子类的对象赋值为基类// 原型类class Entity{ var name = "" init(entityName:String) { self.name = entityName } func showTag()原创 2017-08-31 16:33:55 · 379 阅读 · 0 评论 -
Swift_学习笔记_运算符重载
对于自定义的结构体等,需要我们进行运算符的重载,来对自定义的结构体等进行数据处理。中置运算符对于结构体,没有加号运算符,下面就以结构体为例,自定义加号运算符。struct Ponit{ var x = 0.0 var y = 0.0}// 中置运算符重载func + (left:Ponit,right:Ponit) -> Ponit{ return Ponit(x原创 2017-09-01 13:33:46 · 411 阅读 · 0 评论 -
Swift_cocoapos导入第三方库_桥接文件
Swift 使用pod导入第三类库简单使用在Swift5.0里,直接使用pod导入第三方类库,不使用桥接文件,直接import第三库类名就可以使用第三方库。但是这样的处理方式,在每个需要该第三方的地方都需要进行的import操作,太过麻烦。利用桥接文件,达到类似于Objective-C内pch文件的作用1、创建文件,选择创建Header File,为了区分,将文件命名为xxx...原创 2019-06-29 12:05:40 · 406 阅读 · 0 评论 -
Swift_学习笔记_调用ObjectiveC方法
Swift是对ObjectiveC进行的封装,而且目前许多的第三方SDK以及第三方开源库都使用的ObjectiveC语言进行编写,因此许多的时候都需要Swift调用ObjectiveC内的方法。下面简单的介绍下如何实现Swift调用ObjectiveC内的方法。手动创建桥文件:创建一个Swift工程方式一:点击File->New->Project...。 方式二:快捷键cmd+shift+N。原创 2017-09-04 21:43:45 · 999 阅读 · 0 评论 -
Swift_学习笔记_闭包
闭包可以捕获和存储其所在上下文中任意常量和变量的引用。这就是所谓的闭合并包裹着这些常量和变量,俗称闭包。 闭包有三种形式: - 全局函数是一个有名字,但不会捕获任何值得闭包 - 嵌套函数是一个有名字,并可以捕获其封闭函数域内值的闭包。 - 闭包表达式是一个利用轻量级语法所写的可以捕获其上下文变量或常量值的匿名闭包。 Swift的闭包表达式拥有简洁的风格,原创 2017-09-04 17:40:46 · 674 阅读 · 0 评论 -
Swift_学习笔记_字符串、数组、字典
字符串转义字符\0(空字符)、\\(反斜扛)、\t(水平制表符)、\n(换行符)、\r(回车符)、\”(双引号)、\’(单引号)单字节Unicode标量,写成\u{nn},其中nn为两位十六进制数双字节Unicode标量,写成\u{nnnn},其中nnnn为四位十六进制数var ch = "\u{56}\u{5355}\t\u{9501}\nhello"print(ch)// 经过测试{原创 2017-08-08 14:17:04 · 456 阅读 · 0 评论 -
Swift_学习笔记_枚举和结构体
枚举Swift中的枚举除了具有基本的类型限制和别名使用外,还可以进行继承以及遵守协议。原创 2017-08-08 17:31:06 · 452 阅读 · 0 评论 -
Swift_学习笔记_类
类的声明和定义属性方法subscript下标原创 2017-08-09 19:53:05 · 369 阅读 · 0 评论 -
Swift_二维码、条形码的生成
Object-C对应功能实现二维码的生成class func generateQRCode(messgae:NSString,width:CGFloat,height:CGFloat) -> UIImage { var returnImage:UIImage? if (messgae.length > 0 && width > 0 && height > 0){原创 2017-07-13 10:52:54 · 1117 阅读 · 0 评论 -
Swift_相机扫描二维码、条形码
Object-C对应功能实现代码导入框架、遵循协议import AVFoundation// 协议AVCaptureMetadataOutputObjectsDelegate检测设备相机let authorizationStatus = AVCaptureDevice.authorizationStatus(forMediaType: AVMediaTypeVideo)原创 2017-07-13 10:38:28 · 1514 阅读 · 0 评论 -
Swift_学习笔记_继承
继承是面向对象编程语言的最主要特征之一Swift只有单继承继承是类与结构体和枚举等类型最重要的区别Swift可以重写父类的方法和属性原创 2017-08-10 17:21:02 · 582 阅读 · 0 评论 -
Swift_学习笔记_控制语句和函数
控制语句分支结构if语句switch语句区间匹配var age = 1000switch age {case 0...3: print("3岁以下儿童")case 3...12: print("童年")case 12...18: print("少年")case 18...200: print("成年")default: print("不可能还活着"原创 2017-08-08 15:15:34 · 415 阅读 · 0 评论 -
Swift_学习笔记_泛型
泛型可以使代码更加简洁,避免代码重复,类型检查更加严格。泛型是根据需求定义的,适用于任何类型的,灵活且可重用的函数和类型。避免重复的代码,以一种清晰和抽象的方法来表达代码的意图。占位符的位置在函数名、结构体名等名称的后面,紧随名称。例如:swapTwoValues<T>。泛型函数可以使用占位类型名字(通常使用字母T来表示)来替代实际类型名(Int等)。虽然没有强调参数类型是哪一种,但是参原创 2017-09-01 17:15:14 · 534 阅读 · 0 评论 -
Swift_学习笔记_基础知识
常量和变量常量和变量的声明// 常量的声明let number = 5let string = "string"// 多个常量同时声明,中间用“,”隔开let num1 = 5, num2 = 5// 变量的声明var string1 = "string1"var num3 = 6 ,num4 = 6常量和变量的类型// 常量与变量的类型可以在声明时指定类型,如果在声明时没有指定,编译原创 2017-08-08 09:43:39 · 470 阅读 · 0 评论