排序
Swift实现本地化多语言,咋操作?
本地化多语言是啥? 在App项目中,通常开发者仅仅会支持一种语音。比如中国大陆区的开发者,仅支持汉语版。多语言的好处可以帮助运营适配各个国家的App名称,以及内容方便App进行出海前的准备工...
Swift Macros 元编程为Codable解码提供默认值
Swift Macros 元编程为Codable解码提供默认值 前言 在WWDC2023中,Apple向我们介绍了Swift官方的元编程工具'Swift Macros',与之前社区中的Sourcery相比,具有以下几个优点: 调用便捷:使用Swi...
iOS – Carthage
Carthage 是一个适用于 iOS 和 macOS 开发的去中心化依赖管理工具。它的主要目标是提供一种简单和灵活的方式来集成第三方库到你的项目中,而不修改项目的构建设置。 1.安装 你可以使用 Homebrew...
iOS中UICollectionView的item增删、拖拽和排序动画
我正在参加「掘金·启航计划」 效果图 这个是前段时间项目新增的一个功能,刚刚开始组员是用UIScrollView + UIView 实现的,但这种实现方式属实是有点low,后续闲暇时笔者用UICollectionView简...
iOS启动优化看我就够了
背景 iOS启动优化是指在iOS设备上提升应用程序的启动速度和响应性能的一系列技术和方法。随着移动设备的普及和应用程序的功能复杂化,用户对应用程序的响应速度要求也越来越高,因此启动优化成...
iOS |关于RunLoop与空闲队列
前言 相信每一个中高级iOS开发者即使不怎么深入了解过iOS的runLoop机制,但是都听过runLoop这玩意。平时搜索中最多的用处就是用来监听卡顿啥的,但是你们是否知道我们还可以用来做空闲队列的应...
OpenGL & Metal Shader 编程:ShaderToy 内置全局变量
前面发了一些关于 Shader 编程的文章,有读者反馈太碎片化了,希望这里能整理出来一个系列,方便系统的学习一下 Shader 编程。 由于主流的 Shader 编程网站,如 ShaderToy, gl-transitions 都是...
Flutter 热更新无侵入方案(生成运行时库)
Flutter 热更新无侵入方案(生成运行时库) 导读 1 Flutter 热更新无侵入方案(探讨) flutter_runtime_ide 运行时生成IDE 已经很久没有写相关的文章了,主要在于每天研究时间很短,二是忙着研...
Swift的面向协议开发啥意思?有啥好处呢?
官方解释 面向协议编程,全称Protocol Oriented Programming,简称POP, 是 Apple 在 WWDC2015 上提出的一种编程范式,其已成为 Swift 的基础库。 在讲面向协议之前,介绍下协议的概念。 关于协...
SwiftUI 中如何实现文件导入和导出
前言 之前谈论了在 SwiftUI 中选择照片和视频的问题。今天我们将学习如何在 SwiftUI 视图中导入和导出文件。通过使用新的 fileImporter 和 fileExporter 视图修饰符,可以很方便实现这个功能。 ...
Flutter状态管理新的实践 | 京东云技术团队
1 背景介绍 1.1 声明式ui 声明式UI其实并不是近几年的新技术,但是近几年声明式UI框架非常的火热。单说移动端,跨平台方案有:RN、Flutter。iOS原生有:SwiftUI。android原生有:compose。可以...
iOS设置UICollectionView的Section的背景色和背景图
我正在参加「掘金·启航计划」 效果图 最近遇到这样一个类似于支付宝应用中心功能模块,UICollectionView点击增删、拖拽、排序功能。先不提其他的,这里出现了UICollectionView的Section设置了...
开发 visionOS 前,你需要了解的 Apple AR 技术全景
XR 基地是一个专注于 XR 领域的学习社区,我们专注提供 XR 开发教学课程及文章,通过 learn by doing 的教学理念,将晦涩难懂的概念变的简单易懂;除此之外,我们还会结合社区的力量,让更多的...
Swift:使用 Decimal 接受金额并进行计算
前言 前段时间项目里,涉及到支付相关,后端Java兄弟过来特地找iOS端的我们问了一个问题:我们后端用BigDecimal类型的数据类型,iOS端可以接住吗? 因为安卓和后端都是用的Java编写,所以没有什...
深度解读 Observation —— SwiftUI 性能提升的新途径
在 WWDC 2023 中,苹果介绍了 Swift 标准库中的新成员:Observation 框架。它的出现有望缓解开发者长期面临的 SwiftUI 视图无效更新问题。本文将采取问答的方式,全面而详尽地探讨 Observation ...
如何选择移动端/桌面端跨平台方案
跨平台开发优势 一套代码,多端运行(iOS、Andriod、MacOS、Windows、Linux、Web、小程序...)。 增加业务代码的复用率,减少多个平台适配的工作量,从而降低开发成本, 带来直接的经济效益 在提高...
学习如何使用 Swift 中的 OptionSet
Swift 中的 OptionSet 允许你定义一组关于配置的选项,每个选项只会占用一个比特位。从作用上来看,它等同于 Objective-C 中的 NS_OPTIONS。 从形式上来看,OptionSet 跟枚举很相似。但它们使用...
设置代码仅在 DEBUG/RELEASE 中编译
条件编译 日常开发时,出于某些原因,有时可能需要添加一些仅在测试环境下运行(DEBUG)的代码。我们可以在条件编译的帮助下轻松做到这一点。 Xcode 默认内置了 Debug 环境,可以通过下边的方法...
podspec书写规范
1. Specification (规范) Specification描述了关于Pod库所有配置。包括从何处获取源代码、使用哪些文件、应用构建设置以及其他一般元数据(如名称、版本和描述)的详细信息。 可以直接使用pod s...
iOS离线静态资源包技术方案分析
方案1: Scheme 拦截 1. 方案是什么? Scheme拦截是一种网络请求拦截策略,主要通过定义自定义的URL Scheme和相应的处理方式,使得可以在网络请求时拦截并处理特定的URL请求。在iOS中,我们可以...