Flutter之PageView页面缓存与KeepAlive
目录正文构造函数页面缓存KeepAliveKeepAliveWrapper总结正文如果要实现页面切换和 Tab 布局,我们可以使用 PageView 组件。需要注意,PageView 是一个非常重要的组件,因为在移...
目录正文构造函数页面缓存KeepAliveKeepAliveWrapper总结正文如果要实现页面切换和 Tab 布局,我们可以使用 PageView 组件。需要注意,PageView 是一个非常重要的组件,因为在移...
目录TableView 基础TableView用来做什么如何写一个最简单的TableView拆解版TableViewDelegate & DataSource继承UIViewController自己的Cell class补充知识: DelegationTabl...
目录alloc&init 的源码流程图Init 源码探索new 的源码探索alloc&init 的源码流程图首先创建Person 类, 在main函数创建Person 实例 Person *p = [Person alloc]; 1.进入到all...
目录正文准备工作第一种导航方式第二种导航方式正文在 Web/Mobile 应用程序中,导航是一个很重要的特性,因为它允许你从一个页面跳转到另一个页面。在 flutter 应用程序中,我们...
目录正文捕捉媒体1.创建会话2.配置视频输入3.配置音频输入5.配置输出6.开始会话\结束会话7.捕捉静态图片8.捕捉视频文件9.预览视频正文AVFoundation 是Apple iOS和OS X系统...
目录MediaQueryMediaQueryData使用场景根据尺寸构建不同的布局系统字体变化第三方屏幕的适配框架:设置字体不随系统字体大小进行改变 APP全局总结:MediaQuery通常情况下,不会直...
目录一、真机运行二、打.ipa包测试三、通过testFlight添加测试员四、蒲公英测试Android APP 的测试开发直接打包一个 apk 包发送给测试,测试可以安装到任何 Android 设备开始...
目录正文效果图什么是数据库iOS中的数据存储方式什么是SQLiteSQL语句的种类数据定义语句(DDL:Data Definition Language)数据操作语句(DML:Data Manipulation Language)数据查询语...
目录正文Scrollable主轴和纵轴ViewportSliver可滚动组件的通用配置ScrollController子节点缓存Scrollbar总结正文当内容超过显示视口(ViewPort)时,如果没有特殊处理,Flutter则...
目录正文异常Exception Type:Exception Codes:特殊的 Exception CodeTriggered by Thread:Application Specific Infomation:Last Exception Backtrace:主要信号SIGABRT原因场景...
目录内存管理机制isaSideTable内存管理机制目前流行的内存管理机制主要有GC和RC两种。GC (Garbage Collection):垃圾回收机制,定期查找不再使用的对象,释放对象占用的内存。RC...
目录iOS ViewControllerWhat is a View Controller如何定义ViewController.ViewController的类型生命周期回调ViewController的职责Scene, Window, ViewController总结iOS V...
目录Watch App Lifecycle常见的状态转换启动 App 到 Active 状态App 到 Inactive 状态App 到 Background 状态返回表盘额外的 Background 执行时间App 到 Active 状态App 到...
目录前言通讯原理JavaScriptCore源码解析代码结构初始化WebViewJavascriptBridge 对象native向JS发送消息JS侧native侧JS向native发送消息native侧JS侧总结前言H5页面具有跨...
目录一、效果实现二、操作杆实现三、发射子弹及碰撞检测1、发射子弹2、检测碰撞四、添加病毒及消灭动画1、随机创建病毒2、消灭动画五、思考与总结一、效果实现简单实现了一...
目录前言Drawer 与 UserAccountsDrawerHeader定制唤出按钮并引出 Builder 组件整体代码最后前言平时开发中难免会碰到抽屉效果,如果自己写肯定要费一番工夫,用别人的也要付出...
目录前言简单折线图其他图表让折线图增加可访问性为折线图添加多个数据序列显示步数系列结论前言苹果在 WWDC 2022 上推出了 SwiftUI 图表,这使得在 SwiftUI 视图中创建图表...
目录集成准备iOSAndroidSDK API回传用户隐私授权结果 (submitPrivacyGrantResult)设置远程推送环境设置远程推送环境 (setAPNsForProduction仅 iOS)停止推送(stopPush)重新打...
目录背景:解决方案:OC调用Swift:Swift调用OC:坑:背景:iOS工程中实现的OC和Swift混编的方案和实现步骤已经很多了,在此不做赘述,本篇文章需要描述的是实现在Framework下的混编。解决...
目录概述:CustomScrollView相互嵌套场景NestedScrollView滚动隐藏AppBar SliverAppBar展开折叠 与TabBar配合使用总结:概述:Flutter中常用的滑动布局 ScrollView 有 SingleChil...
目录iOS10以前在iOS10以后的系统中iOS10以前打开设置应用: UIApplication.openSettingsURLString打开通用设置: App-Prefs:root=General打开关于本机: App-Prefs:root=Gener...
目录正文如何使用crash 场景分析源码实现正文在实际开发中,经常需要在几个任务全部执行完成之后,在执行后续操作,在 iOS 中,我们可以通过 NSOperation 等达到这一目的。在本篇文...
目录正文保存数据到KeyChain更新KeyChain中已有的数据从KeyChain中读取数据从KeyChain中删除数据创建一个通用的KeyChainHelper 类正文在我们开发iOS应用的时候,很多时候,我们...
目录(一)协议(二)id类型(三)适配器模式(四)实例(五)委托模式的深入理解Cocoa Touch框架下使用大量使用委托(delegation),根据苹果公司的文档,delegate是Cocoa Touch框架所采用的委托模...
目录正文1. 设置状态栏样式(最下面有更详细的解答):2. 隐藏状态栏:3. 设置状态栏背景颜色:1. 在Info.plist文件中设置2. 在UIViewController中设置3. 在UIApplication中设置4....
目录引言值传递引用传递引言值类型在传递和赋值时将进行复制,而引用类型只会使用引用对象。Swift中定义的很多类型都是值类型,如struct、enum以及所有的内建类型(Int、Bool、S...
目录正文Bugly报错堆栈信息问题定位解决方案数字截断后 crash正文在适配iOS13的过程中,UITextField输入中文的时候三指撤销产生了 crash。Bugly报错NSInternalInconsistencyE...
目录正文Core Bluetooth框架蓝牙相关概念使用Core Bluetooth框架实现蓝牙功能扫描蓝牙设备连接蓝牙设备发现服务和特征读写数据总结正文蓝牙技术已经成为了现代生活中不可或...
目录一 创建Flutter 模块二 嵌入到iOS 项目三 iOS 项目中调用一 创建Flutter 模块命令行flutter create --template module my_flutter创建完成后,该模块和普通的Flutter...
目录UIPasteboard 特点和用法1、剪切板管理类UIPasteboard详解2、剪切板管理类UIPasteboard具体使用UIPasteboard 特点和用法UIPasteboard 是 Swift 中用于存储和检索应用程...
目录正文1 UIViewController2 UINavigationController3 UITabBarController4 UIPageViewController正文iOS 界面开发最重要的是ViewController和View,ViewController是View的...
目录一、需求来源二、实现思路三、使用示例四、实现源码总结一、需求来源之前无论是做 iOS 开发还是 JS 开发,模型动态赋值都是一个非常重要且高频使用的特性。进行 flutter...
目录正文@Synchronized的底层实现badcase分析正文在多线程编程中,线程之间共享资源时容易出现数据竞争的问题,导致程序出现不可预期的结果。为了避免这种情况,我们需要采用一些...
目录iOS开发Info.plistQueried URL Schemes详解详细列举iOS开发Info.plist在iOS开发中,Info.plist是用于存储应用程序相关信息的XML文件,其中包含许多属性来配置应用程序。以...
目录一、排查方法1.1 静态内存泄漏分析方法:1.2 动态内存泄漏分析方法:二、内存泄漏的原因分析2.1 ViewController中存在NSTimer2.2 ViewController中的代理delegate2.3 ViewC...
目录前言一些关键字消息传递 (Messaging)KVO关联对象 (Associated Objects)AOP(Method Swizzling)其它前言Runtime 是使用 C 和汇编实现的运行时代码库,Objective-C 中有很多...
目录概述1.传统的MVC设计模式用户的交互逻辑iOS开发实际使用的MVC架构2.MVP设计模式用户的交互逻辑MVP代码示例3.MVVM+RAC设计模式MVVM代码示例总结概述做了这么多年的客户...
目录正文分析补充总结正文你有注意过objc方法声明处和方法实现处参数类型不一致的情况吗,就像这样:@interface Person : NSObject- (void)frothTime:(NSInteger)regionTime va...
目录一、配置好应用的Universal Links1、开通Associated Domains2、创建文件名"必须"为apple-app-site-association的文件4、在工程配置以 applinks: 开头5、微信开放平台配...
目录背景方案1:fishhook 替换掉 os_unfair_lock_lock方案2: _schedulables 删除 _socket#8 未解析符号: ___lldb_unnamed_symbol8050#3 未解析符号: ___lldb_unnamed_symbol8...
目录背景测试代码_set +0x10 处是个啥?结论NSMutable 对象共性问题?背景最近处理了两个崩溃,都是在 NSMutableSet 调用 enumerateObjectsWithOptions 的时候发生的,崩溃类型悬...
目录iOS定时器选择CADisplayLinkNSTimerGCD定时器总结iOS定时器选择iOS应用中经常需要使用定时器来处理某些任务,例如执行动画、更新UI等。iOS提供了多种定时器类型,包括CADis...
目录在iOS中有3种常见的定时器,它们会根据不同的场景进行选择使用。1.DispatchSourceTimer: 基于GCD实现。2.CADisplayLink:基于屏幕刷新实现。3.Timer:基于RunLoop实现。Dispat...
目录lazy var使用失效原因分析lazy var使用失效一般来说,在UIViewController里的UIView使用lazy var,可以确保在只第一次使用时创建。但是如果在viewDidLoad()前访问这个View,...
目录背景方案1. 实现LOTAnimationDelegate代理2. 生成LOTComposition3. 初始化LOTAnimationView背景手上有需求需要使用CDN资源来让Lottie做动画,但由于动画需要加载图片,而Lo...
目录事件响应链的工作原理响应者对象的特点自定义事件处理事件传递和事件响应事件拦截事件传递到父视图自定义事件响应链总结事件响应链是 iOS 开发中的一个核心概念,它描述...
目录NSTimer - 计时器NSTimer创建计时器函数NSTimer触发与销毁计时器函数常用属性NSRunLoop - 运行循环NSRunLoop常用属性NSRunLoop常用函数NSTimer - 计时器NSTimer派生自N...
目录WidgetKitWidgetKit 主要功能自定义主题自定义组件响应式编程定时器地理位置信息事件监听器可滚动视图WidgetKitWidgetKit 是 Swift 语言中一款用于构建桌面应用程序的...
目录简介AppDelegate和SceneDelegate问题:在iOS13以上冷启动的时候不会走代理函数!如果你用了Scheme方式:iOS13之前会走这个代理函数iOS13之后会走如果你用了Universal Link方...
目录使用属性封装器来完美创建UserDefaults封装器什么是属性封装器?什么是UserDefault封装器将属性封装器进行通用化处理存储自定义对象使用属性封装器来完美创建UserDefault...