首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Swift创建缩放的图像视图

本教程,我们将建立一个缩放、平移的图像视图来实现这一功能。 计划 他们说,一张图片胜过千言万语--但它不一定要花上一千行代码!对于我们的缩放图像视图,我们要做的是让它成为一个缩放的视图。...medium.com/media/afad3… commonInit(),我们将图像视图居中,并设置它的高度和宽度,而不是把它固定在父视图上。这样一来,滚动视图就会从图像视图中获得其内容大小。...设置滚动视图 我们需要实际设置我们的滚动视图,使其缩放和平移。这包括设置最小和最大的缩放级别,以及指定用户放大时使用的UIView(我们的例子,它将是图像视图)。...我们有了一个UIIm我们已经有了一个嵌套在UIScrollView的UIImageView,一切都应该是滚动和平移的。但是我们如何设置我们的图像呢?...我们将通过我们的类添加imageName字符串,并在字符串改变时更新UIImageView来实现。

5.6K20
您找到你想要的搜索结果了吗?
是的
没有找到

百行代码变十行,苹果SwiftUI可视化编程让开发者惊呼完美

而对于开发者来说,新发布的 SwiftUI 可能是最吸引人的特性, Craig Federighi 的演示,我们可以轻松地把一百行的前端代码缩减到十几行。...SwiftUI 自动支持动态字体调整(Dynamic Type)、暗黑模式(Dark Mode)、本地化(localization)和辅助功能(accessibility),这意味着开发者的第一行 SwiftUI...当我们设计面板时,我们编辑的所有内容都与左边编辑器的代码完全同步。当我们修改预览(preview)时,对应代码实时生成,也就是说我们对预览修改的内容能实时体现在代码。...这些视觉编辑器代码编辑器也能用,所以我们可以使用检查器挖掘每个控件的不同选项,即使界面的手动编程部分也是一样的。我们可以从库拖拽控件,再放入到设计面板或代码面板都是可以的。...Xcode 会通过「动态替换」实时 APP 交换编辑的代码,这是 Swift 的新特征。

4K10

苹果全新UI框架来了!可视化编程,自动化减少20%代码量

Swift是苹果最新的开发语言,有人呼吁谷歌取代TensorFlow的Python。目前TOIBE排名18位: ? RedMond排名11 ?...SwiftUI还提供对动态类型、暗黑模式、本地化访问性的自动支持。 SwiftUI都更新了什么? 此次更新主要有5点: 声明式:更加易读的代码。...而SwiftUI通过4种方式,解决了上述问题: 用一个新的声明式UI结构,定义了的布局的外观和工作方式 更新UI预览会自动生成新的Swift代码,反之,更改Swift代码也会更新UI预览 Swift的任何绑定例如有效的...感受一下SwiftUI的代码风格 ? Github一个repo整理了WWDC 2019发布的SwiftUI布局框架的一些官方示例: SwiftUI Essentials 创建和组合视图: ?...比如,它只支持Swift,你不能在Obj-C里使用SwiftUISwiftUI目前还不是很成熟,正在从事iOS开发的程序员可能更应该继续使用Obj-C,直到SwiftUI足够成熟。

5.3K20

分享集锦:设计模式讲解、Node.js 教程、Swift UI、Java 开发

设计模式讲解 我们开发软件时,为了保证代码的可读性、复用性、稳定性,都会结合软件特性,为其挑选一套最为适用的设计模式,以减少后期的维护成本。...https://www.nodejs.red/#/README SwiftUI 资料汇总 自今年 Apple 开发者大会上宣布开放 SwiftUI 以来,其开发平台的讨论热度明显又上升了不少。...什么是 SwiftUI?在这里我引用下 InfoQ 的内容给大家解答下: SwiftUI 是一种非常简单的创新方法,可以利用 Swift 的强大能力在所有苹果设备平台上构建用户界面。...SwiftUI 使用易于阅读和编写的声明式 Swift 语法,与新的 Xcode 设计工具无缝协作,使你的代码和设计完美同步。...SwiftUI 自动支持动态类型、黑暗模式、本地化访问性,你的 SwiftUI 代码将成为你写过的最强大的 UI 代码。

1.2K20

Swift 周报 第十四期

前言 本期是 Swift 编辑组自主整理周报的第五期,每个模块已初步成型。各位读者如果有好的提议,欢迎文末留言。...《付费 App 协议》的附录 B 将会更新,表明 Apple 越南征收和汇付适用税款。 以上调整生效后,“我的 App”“价格与销售范围”部分会随即更新。...您可以随时 App Store Connect 更改您的 App 和 App 内购买项目的价格 (包括自动续期订阅)。如果您有提供订阅项目,您可以选择为现有订阅者保留当前价格。...App 的实时活动会显示锁定屏幕和灵动岛 — “灵动岛”作为一项全新设计,可以让用户直观、愉悦地体验 iPhone 14 Pro 和 iPhone 14 Pro Max。...实现模块化应用的本地化 摘要: 本文详细的介绍了本地化上线的过程,建议收藏,以后新开项目作为参考。

3.3K10

SwiftUI WWDC作为开发者的我最激动的部分

SwiftUI 所有Apple平台都是原生的 ---- SwiftUI创造世界上最创新、最直观的用户界面方面积累了数十年的经验。...用户喜欢苹果生态系统的所有方面,比如控件和特定于平台的体验,都可以代码很好地表现出来。SwiftUI是真正的本地应用程序, ?...SwiftUI是什么 ---- SwiftUI是一种创新的、非常简单的方法,可以利用Swift的强大功能在所有苹果平台上构建用户界面。使用一组工具和api为任何苹果设备构建用户界面。...SwiftUI的声明式Swift语法易于阅读和编写,与新的Xcode设计工具无缝合作,使您的代码和设计完美同步。...自动支持动态类型、暗模式、本地化访问性意味着您的第一行SwiftUI代码已经是您编写过的最强大的UI代码。 ?

2.3K30

iOS字符串本地化(APP 内的本地化切换) 、nib本地化、图片本地化

如果找到了相应的文件夹,就会载入这个文件夹的资源 I、nib& info.plist 本地化 本地化前的准备 先创建本地化文件夹(zh-Hans.lproj),让应用程序支持对应的语言环境,并选择选择当前需要本地化的资源...预先准备好的图片替换对应语言的图片即可 例如替换中文 zh-Hans.lproj文件夹的home.png 代码照常使用图片即可 [UIImage imageNamed:@"icon_hyxq_youhuiq..."]; III、字符串本地化 应用场景: iOS APP 内的国际化切换 (对话框的文字)、 应用名称本地化 3.1 APP 内的本地化切换 【iOS APP 内的国际化切换】1、字符串本地化...{m,c,cpp,swift} ... filen....-SwiftUI enables SwiftUI Text() support.

1.5K30

多包项目中统一管理资源

SPM 本身提供了对包各类资源( 包括本地化资源 )的管理能力,但主要局限于本包中使用这些资源,难以将资源进行共享。在有多个 Target 均需调用同一资源的情况下,原有的方式很难应对。...欢迎大家 Discord 频道[2] 中进行更多地交流问题笔者最近正在使用 TCA( The Composable Architecture[3] )结合 SwiftUI 做一些开发, TCA ,...每个 Feature 基本上可以被视作一个独立运行的小应用( 注入所需的环境后 )。...这个结构不仅允许预测性地加载代码和资源,同时也支持类似于本地化这样的系统性特性。Bundle 存储上以目录的形式存在,代码则需要通过 Foundation 框架的 Bundle 类来体现。...I18NResource Target 对应的目录下创建 Resources 目录修改 Package.swift,添加 defaultLocalization: "en", 启用本地化支持 I18NResource.swift

1.4K20

SwiftUI TextField进阶——格式与校验

其他需要注意的问题 使用上面的思路进行实际编程前,我们还需要考虑其他几个问题: 本地化 本文提供的演示代码[6]实现了对Int和Double两种类型的实时处理。...如果你需要判断的是日期或其他自定义格式数据,最好也代码中提供针对本地化字符的处理过程。 Formatter SwiftUI的TextField目前对新老两种Formatter都提供了对应的构造方法。...•支持的类型种类方案一可以直接使用多种数据类型,方案二TextField的构造方法中将原始数值转换成对应格式的字符串。方案二的演示代码,可以通过result获取字符串对应的数值。...不利于判断用户是否录入新的信息(更多的信息参阅如何在SwiftUI创建一个实时响应的Form[10])。方案二允许不提供初始值,支持可选值。...本文仅涉及了TextField的部分内容,SwiftUI TextField进阶】的其他篇幅,我们将探讨更多的技巧和思路,让开发者SwiftUI创建不一样的文本录入体验。

8K20

ViewBuilder 研究(上)—— 掌握 Result builders

通过对函数语句应用构建器进行转译,result builders 提供了 Swift 创建新的领域特定语言( DSL )的能力(为了保留原始代码的动态语义,Swift 有意地限制了这些构建器的能力)...随着 SwiftSwiftUI 的不断进化,最终被正式纳入到 Swift 5.4 版本之中。...另外,最新的 Swift 提案,已出现了 Regex builder DSL[4] 的身影。其他的开发者利用该功能也创建了不少的 第三方库[5]。..." .color(.red) "World" .color(.blue) .bold() } AttributedString 提供了对本地化字符串以及部分...这种情况 SwiftUI 很常见,例如某些 View 或 modifier 仅支持较新的平台,我们需要为不支持的平台提供其他的内容。

3K20

WWDC 23 之后的 SwiftUI 有哪些新功能

前言 WWDC 23 已经到来,SwiftUI 框架中有很多改变和新增的功能。本文中将主要介绍 SwiftUI 数据流、动画、ScrollView、搜索、新手势等功能的新变化。...数据流 Swift 5.9 引入了宏功能,成为 SwiftUI 数据流的核心。SwiftUI 不再使用 Combine,而是使用新的 Observation 框架。...之前的 SwiftUI 框架版本,应该使用 @ObservedObject 属性包装器来订阅更改。现在不需要了,因为 SwiftUI 视图会自动跟踪符合 Observable 协议的类型的更改。...动画 动画始终是 SwiftUI 框架中最重要的部分。 SwiftUI 轻松实现任何动画,但之前的框架版本缺少一些现在具有的功能。...Swift Charts 也具有滚动和动画的功能。

32020

Swift 5.4 新特性

Swift 一直具有对简单表达式使用隐式成员语法的能力,例如,如果您想在 SwiftUI 为某些文本着色,则可以使用 .red 而不是 Color.red: struct ContentView1:...() 的每个语句自动转换为单个字符串。...我们的代码,我们根本不需要转换字符串,因此我们可以立即将它们发送回去: @resultBuilder struct ConditionalStringBuilder { static func...Swift 5.4 之前,只有未嵌套在 makeCookies() 的情况下,才可以重载这三个 add() 方法,但是从 Swift 5.4 开始,在这种情况下也支持函数重载。...现在支持局部变量的属性包装器 属性包装器最初是 Swift 5.1 引入的,它是一种通过简单,重复使用的方式将附加功能附加到属性的方法,但是 Swift 5.4 ,它们的行为得到扩展以支持将其用作函数的局部变量

1.6K40

SwiftUI:自定义 Shape 使用 InsettableShape 协议实现向内绘制边框

您在这里看到的是SwiftUI形状周围绘制边框的方式的副作用。如果您递给某人一个圆的铅笔轮廓,并要求他们用粗笔该圆上画线,他们将绘制出该圆的精确线——大约一半的笔该线的内部,一半该线的外部。...这就是SwiftUI为我们所做的,但是当形状到达屏幕边缘时,则意味着边框的外部最终超出了屏幕边缘。....strokeBorder(Color.blue, lineWidth: 40) 这将stroke()更改为strokeBorder(),现在我们得到了更好的结果:我们的所有边框都是可见的,因为Swift...但是,这种代码不起作用: Arc(startAngle: .degrees(-90), endAngle: .degrees(90), clockwise: true) .strokeBorder...这将获得插入量(笔画的线宽的一半),并应返回一种新的插入形状——我们的实例,这意味着我们应该创建一个插入弧型。问题是我们不知道圆弧的实际大小,因为尚未调用path(in :)。

1.7K40

iOS之深入解析Xcode 13正式版发布的40个新特性

,以找到要加载的 dylib; 十五、本地化 Xcode 现在可以打开 Xcode 本地化目录 (.xcloc) 以查看和编辑字符串和其他本地化资产的翻译; 新的 Use Compiler to Extract...的 LocalizedStringKey 和 Foundation 的 StringLocalizationKey 准确地提取字符串插值和字符串文字; 添加了对 genstrings 和本地化导入和导出的支持...,以提取 Objective-C 代码中使用新 NSLocalizedAttributedString 宏的字符串; 导出本地化时,多个本地化的错误现在会聚合到一个警报对话框导出以进行本地化时...; 从 Swift 类、协议或方法声明跳转到定义还可以轻松导航到整个工作区的所有子类、扩展和符合协议的类型; Xcode 13 包括重新设计的 Swift 代码完成功能,最大限度地提高可靠性和性能,...这可以简化您的代码并减少提供的本地化字符串的数量,因为它会自动对本地化字符串进行变形以说明复数、语法协议。它适用于英语和西班牙语。

8.7K40

肘子的 Swift 周报 #033|改善社区活跃度,仅更新论坛还不够

论坛的新版本,苹果工程师的身份通过统一的标识( 头像上的苹果标志 ) ,替代了之前通过签名来表明身份的方式。...接下来的两篇文章,作者们展示了如何利用 Result Builders 来开发适用于不同领域的 DSL,同时分享了构建这些功能时的实用经验和深入见解。...此外,作者还分享了使用 Result Builders 过程的经验教训和个人建议,尤其是关于如何简化并具体化复杂概念以解决问题的策略。...本文中,Paul 探讨了如何使用 Swift 的结果构建器(Result Builders)来编写更智能、更安全的 HTML 代码,这也是该项目中一个很重要的组成部分。...年 WWDC 上推出的新框架,旨在帮助开发者应用程序轻松展示提示信息。

10810

SwiftUI 与 Core Data —— 数据获取

通过新创建一个可以使用 Mock 数据的 FetchRequest ,实现了 SwiftUI 与 Core Data —— 问题[6] 一文中提出的测试、预览、模块化的目标。...遗憾的时,NSFetchedResultsController 为 UITableView 准备的基于 NSFetchRequestResultType 优化操作 SwiftUI 不起作用。... SwiftUI ,ForEach 会根据数据标识( Identifier )自动处理视图的添加、删除等操作,因此,当在 SwiftUI 中使用 NSFetchedResultsController...类型引发视图更新的数据发生变化后调用该方法。...不可在 update 方法同步地改变引发视图更新的数据与 SwiftUI 视图中更新 Source of truth 的逻辑一致,一个视图更新周期中,不能对 Source of truth 再度更新

4.6K30

Swift 5.1 新特性

) } } 属性包装类型(Property Wrapper Types) iOS 开发,经常要用到 IBOutlet、IBAction,Swift,越来越多 @修饰的关键字出现,比如...@UIApplicationMain,最新的杀器 SwiftUI ,会发现这样的关键字越来越多,比如 @State,@Binding,@EnvironmentObject等,它们共同构成了 SwiftUI...数据流的最基本的单元,这些知识点随着学习 SwiftUI 而深入了解。...Post { //用上面定义的Trimmed修饰同类型的变量 @Trimmed var title: String @Trimmed var body: String } //任何字符串无论是初始化期间还是通过后面的属性访问都会自动删除前后面的空格...量身定做的,这样看,Apple 一定会在SwiftUI 继续发力,经过本章知识点的学习,可以帮助大家更好的学习SwiftUI

1.3K20
领券