![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Swift
LzhSweeterSmile
我是图图小淘气 面对世界好好奇
展开
-
Swift Codable 解析不确定类型
【代码】SwiftCodable解析不确定类型。原创 2023-02-08 16:13:19 · 579 阅读 · 0 评论 -
拦截UIViewController的系统侧滑POP手势
【代码】拦截UIViewController的系统侧滑POP手势。原创 2022-12-02 16:08:28 · 371 阅读 · 0 评论 -
Swift 禁止某个控制器的侧滑pop手势
【代码】Swift 禁止某个控制器的侧滑pop手势。原创 2022-11-17 11:50:02 · 1109 阅读 · 0 评论 -
Swift 在父控件上给子控件拓展点击区域
【代码】Swift 在父控件上给子控件拓展点击区域。原创 2022-11-04 17:43:05 · 434 阅读 · 0 评论 -
iOS13 CryptoKit MD5 SHA1 SHA256 多种加密
iOS13 CryptoKit MD5 SHA1 SHA256 多种加密。原创 2022-10-11 01:36:24 · 506 阅读 · 0 评论 -
最新 Swift5 Any AnyObject 元类型 基类 Self
Any AnyObjectSwift 提供了2种特殊的类型: Any AnyObjectAny:可以代表任意类型(枚举 结构体 类 也包括函数类型)AnyObject: 可以代表任意类类型(在协议后面写上:AnyObject代表只能类能遵守这个协议)//var date = [Any]()var date = Array<Any>()date.append(1)date.append(2.2)date.append("abc")date.append({10})...原创 2020-11-21 22:55:25 · 237 阅读 · 0 评论 -
最新 Swift5 属性
Swift中跟实例相关的属性可以分为2大类存储属性 和 计算属性struct CirCle { // 存储属性 相当于成员变量 存储在实例的内存中 var redius: Double // 计算属性 相当于方法(函数) 不占内存 var diameter: Double { set { redius = newValue / 2 } get { return redius原创 2020-11-21 15:47:03 · 104 阅读 · 0 评论 -
最新 Swift5 闭包表达式(Closure Expression) 和 闭包(Closure)
闭包表达式(Closure Expression)首先swift里面 闭包表达式和闭包是不同的两个概念在swift中 可以通过 func 定义一个函数,也可以用过闭包表达式定义一个函数func sum (v1:Int,v2:Int) -> Int { return v1 + v2}var fn = { (v1:Int, v2:Int) -> Int in return v1 + v2}{ (参数列表) -> 返回值类型 in .原创 2020-11-21 12:14:44 · 289 阅读 · 0 评论 -
最新 Swift5 空合并运算符 ??
let a :Int? = 1let b :Int? = 2let c = a ?? b // c是Int? , Optional(1)let a :Int? = nillet b :Int? = 2let c = a ?? b // c是Int? , Optional(2)let a :Int? = nillet b :Int? = nillet c = a ?? b //c是Int? , nillet a :Int? = 1let b :Int = 2let c = .原创 2020-11-21 02:10:51 · 169 阅读 · 0 评论 -
最新 Swift5 MemoryLayout
使用MemoryLayout获取数据类型占用内存大小struct AB { var a:Bool // 1 var b:Float // 4 var c:Int // 8}MemoryLayout<AB>.stride //16,分配占用的空间大小MemoryLayout<AB>.size //13,实际用到的空间大小MemoryLayout<AB>.alignment // 8,对齐参数var d:D原创 2020-11-21 01:47:42 · 144 阅读 · 0 评论 -
最新 Swift5 inout的应用
可以用inout定义一个输入输出参数:可以在函数内部修改外部实参的值var a = 10var b = 20func swapValues (v1:inout Int, v2: inout Int){ // 通过元组交互两个数的值 (v1, v2) = (v2, v1)}swapValues(v1: &a, v2: &b)print(a,b)// 20 10...原创 2020-11-21 01:12:28 · 198 阅读 · 0 评论 -
最新 Swift5 常见数据类型
可选类型本质是枚举Int 32位 占4个字节 64位占8个字节原创 2020-11-21 00:55:00 · 710 阅读 · 0 评论 -
Swift5 交换方法 @_dynamicReplacement(for:)
class Sweeter { dynamic func change() { print("????") }}extension Sweeter { @_dynamicReplacement(for:change()) func changeA() { print("????") }}Sweeter().changeA()????原创 2020-11-05 13:55:37 · 960 阅读 · 0 评论 -
Swift 生成纯色的图片
extension UIImage { func lzh_imageWithColor(color:UIColor) -> UIImage { let rect = CGRect(x: 0, y: 0, width: 1, height: 1) UIGraphicsBeginImageContextWithOptions(rect.size, false, 0) let context = UIGraphicsGetCurrentContext.原创 2020-11-02 11:24:14 · 923 阅读 · 1 评论 -
Swift 十六进制颜色便利构造方法
extension UIColor { // Hex String -> UIColor convenience init(hexStr: String) { let hexString = hexStr.trimmingCharacters(in: .whitespacesAndNewlines) let scanner = Scanner(string: hexString) if hexString.hasPrefix("#") .原创 2020-11-02 10:40:01 · 378 阅读 · 0 评论 -
Swift 随机颜色 分类
extension UIColor { //返回随机颜色 class var randomColor:UIColor{ get{ let red = CGFloat(arc4random()%256)/255.0 let green = CGFloat(arc4random()%256)/255.0 let blue = CGFloat(arc4random()%256)/255.0 .原创 2020-11-02 10:20:25 · 600 阅读 · 0 评论 -
Swift UIButton 扩大点击范围
import Foundationimport UIKitvar expandSizeKey = "expandSizeKey"extension UIButton { open func lzh_expandSize(size:CGFloat) { objc_setAssociatedObject(self, &expandSizeKey,size, objc_AssociationPolicy.OBJC_ASSOCIATION_COPY) }.原创 2020-11-02 08:38:09 · 2094 阅读 · 2 评论