Swift UI 3

这篇具有很好参考价值的文章主要介绍了Swift UI 3。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Part 1 视频学习

存储文本字段值需要使用字符串进行存储

Swift UI 3,swift,ui,开发语言

Textfieled建立文本框

Swift UI 3,swift,ui,开发语言

文本框没有限制数字

Swift UI 3,swift,ui,开发语言美元符号绑定自动文本Swift UI 3,swift,ui,开发语言Swift UI 3,swift,ui,开发语言使用文本框进行文字输入处理Swift UI 3,swift,ui,开发语言确定键盘类型Swift UI 3,swift,ui,开发语言  新建一个键盘Swift UI 3,swift,ui,开发语言text使用美元符号进行双向绑定Swift UI 3,swift,ui,开发语言navigation进行添加导航视图Swift UI 3,swift,ui,开发语言使用for each进行强制循环Swift UI 3,swift,ui,开发语言

                                                      增加标签头使用headerSwift UI 3,swift,ui,开发语言文章来源地址https://www.toymoban.com/news/detail-859906.html

Part 2 代码以及函数学习

Scrollview

  • 这段代码在 SwiftUI 中根据设备屏幕高度来确定是否使用 ScrollView 来包装内容。如果设备屏幕高度小于 750,即 iPhone SE(第一代)和 iPhone 8 Plus 以下的设备,则使用 ScrollView 包装内容,以确保内容在较小的屏幕上能够滚动查看。否则,如果设备屏幕高度大于等于 750,则直接显示内容,因为较大的屏幕可以容纳更多内容而无需滚动。
  • 1. if 分支:在设备屏幕高度小于 750 时,创建一个 ScrollView,并在其中包含 Home 视图,同时设置 showsIndicators 参数为 false,以隐藏滚动指示器。
  • 2. else 分支:在设备屏幕高度大于等于 750 时,直接显示 Home 视图,而不使用 ScrollView 包装。
  • 这种做法在设计自适应界面时

HStack

  • 1. `HStack(spacing: 0) { ... }`:这是一个水平方向的堆栈 (HStack),它将其中的子视图水平排列。通过 `spacing: 0` 参数设置了子视图之间的间距为 0,这意味着子视图之间没有间距,它们会紧密排列在一起。
  • 2. `Button(action:{ ... }) { ... }`:在这个`HStack`中,您有一个按钮。按钮是一个交互式的视图,用户可以点击它来执行指定的操作。在这个按钮中,指定了一个动作 (action),当用户点击按钮时,这个动作将被触发。
  • 3. `withAnimation(.spring()) { index = 0 }`:在按钮的动作 (action) 中,使用 `withAnimation(.spring())` 来指定一个带有弹簧效果的动画。在动画中,`index` 的值被设置为 0。`index` 可能是一个状态变量,用于控制视图的状态或导航等。
  • 这段代码的作用是创建一个水平堆栈,其中包含一个按钮。当用户点击按钮时,通过动画将 `index` 的值设置为 0,而动画效果为带有弹簧效果的过渡。
  • 这段代码创建了一个 ZStack,其中包含两个 Capsule,用于显示一个底部条和一个被选中的标签。1. `ZStack { ... }`:这是一个 ZStack,用于创建一个重叠的视图层级。
  • 2. `Capsule().fill(Color.black.opacity(0.04))`:第一个 Capsule 用于显示底部条。它的填充颜色为黑色,不透明度为 0.04,使其呈现出浅灰色的效果。该 Capsule 的高度设置为 4。
  • 3. `if index == 0 { ... }`:这是一个条件语句,用于根据变量 `index` 的值决定是否显示第二个 Capsule。如果 `index` 等于 0,则显示第二个 Capsule,否则不显示。
  • 4. `Capsule().fill(Color("Color"))`:第二个 Capsule 用于显示被选中的标签。它的填充颜色使用名为 "Color" 的颜色资源来确定。该 Capsule 的高度设置为 4,并且应用了 `matchedGeometryEffect` 修饰符,用于创建视图间的共享动画效果。
  • 5. `matchedGeometryEffect(id:"Tab", in: name)`:这个修饰符用于创建一个共享的几何效果,以便在视图间进行动画过渡时使用。它接受两个参数:`id` 和 `in`。`id` 用于唯一标识几何效果,`in` 表示几何效果应用的范围。在这里,我们使用 `id` 为 "Tab",而 `in` 为 `name`,表示几何效果在 `name` 的范围内共享。这样,当 `index` 改变时,被选中的标签会以动画的方式从之前的位置移动到新的位置,从而创建一种流畅的过渡效果。
  • 通过以上代码,您可以实现一个在用户切换选项卡时具有动画效果的标签栏。
  • Image

  • 这段代码创建了一个图像视图,用于显示名为 "profile" 的图像文件。让我解释一下代码的结构和功能:
  • - `Image("profile")`:这是一个图像视图,用于显示名为 "profile" 的图像文件。在 SwiftUI 中,可以直接使用图像文件的名称来创建图像视图。
  • - `.resizable()`:这个修饰符允许图像调整大小,以便根据所提供的框架大小自适应。
  • - `.aspectRatio(contentMode: .fill)`:这个修饰符设置了图像的纵横比,并指定了内容模式为 `.fill`,这意味着图像会被拉伸或挤压以填充整个框架,不保持原始比例。
  • - `.frame(width: 85, height: 85)`:这个修饰符设置了图像视图的大小,使其具有宽度和高度均为 85 点的框架。
  • - `.clipShape(Circle())`:这个修饰符将图像裁剪为圆形,使得图像的外部部分被剪裁掉,只保留圆形范围内的部分。
  • 通过以上代码,您创建了一个图像视图,将名为 "profile" 的图像文件显示为圆形的头像,且头像大小为 85x85 点。
  • VStack

  • 这段代码创建了一个垂直方向的堆栈 (VStack),其中包含了一些子视图,并且设置了子视图的对齐方式和间距。让我解释一下代码的结构和功能:
  • - `VStack`:这是一个 SwiftUI 中的布局视图,用于垂直排列其中的子视图。
  • - `alignment: .leading`:通过设置 `alignment` 参数为 `.leading`,指定了堆栈中子视图的对齐方式为左对齐。这意味着堆栈中的子视图将在左侧对齐,而不是默认的居中对齐。
  • - `spacing: 15`:通过设置 `spacing` 参数为 `15`,指定了堆栈中相邻子视图之间的间距为 `15` 点。这意味着相邻的子视图之间会有 `15` 点的间距,用于调整它们在堆栈中的布局位置。
  • 通过以上代码,您创建了一个垂直堆栈,其中的子视图会左对齐,并且相邻子视图之间有 `15` 点的间距。这种布局可以用于创建垂直排列的用户界面元素,比如表单、列表等。
  • renderingMode(.template)`

  • 在 SwiftUI 中,`.renderingMode(.template)` 是用于设置图像的渲染模式的一种方式。渲染模式定义了图像在视图中的显示方式。
  • 将渲染模式设置为 `.template` 时,图像将以模板方式渲染。在这种模式下,图像的颜色将根据环境中的前景色自动进行调整。这意味着,无论您将图像放置在什么背景下,它都会自动适应并显示为前景色。
  • 在这个示例中,创建了一个心形图标,并将其渲染模式设置为 `.template`。然后,通过设置 `.foregroundColor(.red)` 来指定前景色为红色。由于设置了渲染模式为 `.template`,因此即使将图标放置在不同的背景下,它也会自动调整颜色以匹配前景色(红色)。
  • 这种渲染模式在需要根据环境动态调整图像颜色的情况下非常有用,例如在按钮、图标等 UI 元素中。

到了这里,关于Swift UI 3的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在Swift UI中使用相对坐标简化Shape绘制

    Swift UI 提供了一些内置的基本形状,如矩形,圆角矩形,圆和椭圆等。 实际开发过程中,这些形状远远不够,需要增加新的定制形状,比如,三角形,或者复杂一点的水滴形状等。 要增加新的自定义形状,只要实现SwiftUI 提供Shape协议即可。下面是自定义一个三角形的例子:

    2024年03月16日
    浏览(37)
  • swift ui 布局 ——Stack(HStack、VStack、ZStack)

    将其子视图排列在水平线上 默认子视图是水平中心对齐的,可添加alignment  修改位置,alignmet 的值有 bottom   top  center等,可自己查看api 将其子视图排列在垂直线上 默认子视图是垂直中心中心对齐的,可添加alignment  修改位置,alignmet 的值有 leading   trailing  center等 用于覆盖

    2024年02月05日
    浏览(26)
  • Mac OS Swift UI 中使用WKWebView,以及实现代理

    首先进行项目配置,支持入网 ​​​​​​​​ 首先为了能在Swift UI中使用WebView,应该对其进行包装 观察网页在什么时候需要前进或者后退,这个时候要用ObservableObject来进行包装 现在,可以将它放到contentView中调试

    2024年02月14日
    浏览(29)
  • iOS从UI内存地址到读取成员变量(oc/swift)

    开发调试时,我们发现bug时常首先是从UI显示发现异常,下一步才会去定位UI相关连的数据的。XCode有给我们提供一系列debug工具,但是很多人可能还没有形成一套稳定的调试流程,因此本文尝试解决这个问题,顺便提出一个 暴论 :UI显示异常问题只需要两个步骤就能完成定位

    2023年04月19日
    浏览(56)
  • Swift Combine 通过用户输入更新声明式 UI 从入门到精通十五

    Combine 系列 Swift Combine 从入门到精通一 Swift Combine 发布者订阅者操作者 从入门到精通二 Swift Combine 管道 从入门到精通三 Swift Combine 发布者publisher的生命周期 从入门到精通四 Swift Combine 操作符operations和Subjects发布者的生命周期 从入门到精通五 Swift Combine 订阅者Subscriber的生命周

    2024年02月20日
    浏览(25)
  • Swift Combine 合并多个管道以更新 UI 元素 从入门到精通十七

    Combine 系列 Swift Combine 从入门到精通一 Swift Combine 发布者订阅者操作者 从入门到精通二 Swift Combine 管道 从入门到精通三 Swift Combine 发布者publisher的生命周期 从入门到精通四 Swift Combine 操作符operations和Subjects发布者的生命周期 从入门到精通五 Swift Combine 订阅者Subscriber的生命周

    2024年03月13日
    浏览(31)
  • Swift学习日记(3) --关于请求多个接口导致UI绘制顺序不正确及GCD

    问题描述:在我写的controller里面 需要去请求三个接口:广告接口 九宫格接口 单曲接口 每个接口对应的是tableview里面每一个cell的数据,为了图省事,我把三个接口直接扔在viewdidload里面,然后在每个接口请求完数据之后刷新一下列表。 代码如下: 这个 fetchDataAndUpdateUI() 是广

    2024年02月03日
    浏览(29)
  • Swift Combine 级联多个 UI 更新,包括网络请求 从入门到精通十六

    Combine 系列 Swift Combine 从入门到精通一 Swift Combine 发布者订阅者操作者 从入门到精通二 Swift Combine 管道 从入门到精通三 Swift Combine 发布者publisher的生命周期 从入门到精通四 Swift Combine 操作符operations和Subjects发布者的生命周期 从入门到精通五 Swift Combine 订阅者Subscriber的生命周

    2024年02月19日
    浏览(24)
  • iOS开发系列--Swift语言

    Swift是苹果2014年推出的全新的编程语言,它继承了C语言、ObjC的特性,且克服了C语言的兼容性问题。Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在其中你可以看到C#、Java、Javascript、Python等多种语言的影子。同时在2015年的WWDC上苹果还宣布

    2024年02月06日
    浏览(35)
  • Swift语言基础

    Swift 是一种支持多编程范式和编译式的开源编程语言,苹果于2014年WWDC(苹果开发者大会)发布,用于开发 iOS,OS X 和 watchOS 应用程序。 Swift 结合了 C 和 Objective-C 的优点并且不受 C 兼容性的限制。 Swift 在 Mac OS 和 iOS 平台可以和 Object-C 使用相同的运行环境。 官方手册: swift官

    2024年02月12日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包