在 SwiftUI 3.0 iOS 15 中调整视图与键盘显示

2024-02-29

我的注册页面有VStack嵌入一​​个ScrollView嵌入在VStack。在最里面VStack我有一系列TextField与定制TextFieldStyle.

注册页面的 UI 如下所示:

    VStack {
        ScrollView {
            VStack(spacing: 24) {
                TextField(text: $firstNameText) {
                    Text(.firstNameLabel)
                }
                .textFieldStyle(.customTextfieldStyle())
                TextField(text: $lastNameText) {
                    Text(.lastNameLabel)
                }
                .textFieldStyle(.customTextfieldStyle())
            }
        }
        Spacer()
        Button(action: submit) {
            Text(.nextButtonTitle)
        }
    }

接下来,customTextfieldStyle看起来像这样:

        VStack(alignment: .leading, spacing: 0) {
            configuration
                .font(.bodyBook14)
                .padding(.bottom, 16)
            Rectangle()
                .fill(errors.isEmpty ? Color.primary : .errorRed)
                .frame(height: 1)
            ForEach(errors) { error in
                Text(error.title)
                    .font(.bodyBook14)
                    .foregroundColor(.errorRed)
                    .padding(.top, 8)
            }
        }

在我的自定义文本字段样式中,我添加了一个矩形和一个错误文本。我遇到的问题是这种自定义样式,文本字段下方的矩形和错误消息被焦点覆盖。键盘回避不会偏移足够的滚动视图来向用户显示它们。键盘正确地偏移视图,使其仅显示文本字段,而不显示矩形和错误消息。是否可以使键盘识别整个自定义文本字段样式应该向上移动?

Screenshot below shows how error text is all covered by the keyboard / button. enter image description here


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 SwiftUI 3.0 iOS 15 中调整视图与键盘显示 的相关文章

  • iOS SecItemCopyMatching RSA 公钥格式?

    我正在尝试从已生成的密钥对 两个SecKeyRefs 以便通过线路发送 我所需要的只是一个简单的 modulus exponent 对 它应该正好占用 131 个字节 模数为 128 指数为 3 但是 当我获取关键信息时NSData对象 我
  • Draggable Boxview 不更新 Xamarin

    我的第一个问题是框视图生成在左上角 而不是我指定的设计网格第 10 行和网格第 3 列 第二个问题在于可拖动视图 在代码本地可拖动视图的第一部分中 它正确地调用了触摸事件 但也许它没有在GUI中更新
  • iOS 中系统日期更改后如何更改带有日期的标签?

    我有一个简单的查询 但不知道该怎么做 这就是我想要实现的目标 1 我有一个带有今天日期的 UILabel 即 29 04 12 2 在午夜 我希望该标签自行更新为 30 04 12 而无需更改视图或按任何内容 这是第2步 我不知道该怎么做
  • 定位精度定义 - iOS

    iOS 上返回的 准确性 或 不确定性 的统计意图是什么 即使是近似值 例如 Android 文档对其返回的精度数字进行了解释 从这个意义上讲 它大约是一个标准差 我们将准确度定义为 68 置信度的半径 换句话说 如果 您以该位置的纬度和经
  • Swift 中的 @autoreleasepool 相当于什么?

    在 Swift 中 我注意到没有 autoreleasepool 构造 尽管 Swift 确实使用了 ARC 在 Swift 中管理自动释放池的正确方法是什么 或者它是否因某种原因被删除 语法如下 autoreleasepool code
  • 在 UITableViewCell 内动态更改标签宽度

    我正在尝试建立一个自定义表格视图 正如您在图片中看到的 我在故事板一侧将标签的宽度默认设置为 160 磅 并在加载表格时动态更改宽度 我通过修改 cellForRowAtIndexPath 委托方法来实现此目的 因此 根据日期的长度 我设置
  • 添加 AFNetworking 后出现 APPLE MACH-O 链接错误

    只是将 AFNetworking 添加到我的项目中 在 B R 后 我收到如下错误 Undefined symbols for architecture i386 SecCertificateCopyData referenced from
  • Swift 1.2 可选外部变量?

    由于 Swift 无法访问编译变量 因此我创建了一个指向编译变量的 Objective C extern 变量 编译变量转换器 h extern NSString const NetworkApiBasicAuthUsername 编译变量
  • Xcode 11 - 在 Catalyst Swift 中禁用调整大小模式

    We are 将我们基于 Swift 的 iOS 应用程序转换为 Mac兼容使用Catalyst在 Xcode 11 中 当用户使用时 我们在 UI 中面临一个问题resize应用程序窗口 那么我们可以禁用调整大小模式并为应用程序窗口提供修
  • 在两个可移动 uiview 之间画线

    我有一个带有节点的 滚动视图 UIViews 可以拖动 我正在尝试在选定的之间绘制边缘UIViews使用 calayer 但我不知道当视图位置发生变化时如何重新绘制线条 In my viewControllerI 类在节点数组中添加第一个和
  • 在后台运行 URL 请求

    我想在一定的时间间隔内发出 url 请求 例如 每 10 分钟应用程序应该发出一次 url 调用并获取一些 json 数据 应用程序在后台运行时应该能够执行此操作 这可以做到吗 如果是这样 这是否违反 Apple 服务条款 有什么限制吗 i
  • 增量后清除推送通知徽章

    我正在研究 iPhone 中的推送通知 当我收到推送通知时 它在我的应用程序图标上显示 1 下次显示 2 3 4 如果我打开应用程序 它是 0 下次它应该是 1 2 3 4 但它显示最后一个数字和 1 我想在打开应用程序后重置推送通知徽章
  • 使用 UIWebView 显示 PDF 不起作用

    因此 我意识到有关使用 UIWebView 在应用程序 在 iPad 上 中显示 PDF 存在很多问题 我已经审查了我能找到的所有内容 但似乎找不到任何满意的东西 我想做的事情非常基本 所以我真的不知道为什么它不起作用 我需要做的就是在 U
  • 在后台继续下载

    我正在创建一个应用程序 其中我从服务器下载一些数据 在后台运行时 我希望连接继续运行 以便可以下载数据 我知道有方法应用程序委托 void applicationDidEnterBackground UIApplication applic
  • Swift 错误:发出 SIGABRT 信号如何解决

    我只是 Swift 编码的初学者 我的想法很简单 就是一个有两个按钮的应用程序 单击时 文本字段将更改其文本 在 Main StoryBoard 中 我添加一个文本字段和两个按钮 在 ViewController swift 文件中 我这样
  • AGVTool new-version 和 What-version 不对应

    当我做 agvtool new version all 99 它更新我的 Info plist 文件 但是 如果我这样做 agvtool what version or agvtool next version 我收到此错误 There d
  • 如何在没有 MFMessageComposeViewController 的情况下发送和接收短信?

    我想发送和接收短信而不显示MFMessageViewController从我的申请中 有人能告诉我这怎么可能吗 不可能 除非您使用第 3 方 api 发送 接收短信
  • 游戏中心玩家显示名称在沙盒中始终为“我”

    我使用用户的游戏中心显示名称和玩家 ID 来维护他们在我的服务器上的个人资料 当我进行测试时 一切似乎都正确执行 但我的沙箱帐户的用户显示名称显示为 Me 而不是附加到我的帐户的显示名称 Billybobbo 这应该在沙盒模式下发生吗 Co
  • 如何删除以前的 ViewController

    我是一名学生 对编程还很陌生 我正在尝试在业余时间学习 Objective C Swift 我使用 spriteKit 和 swift 制作了一个游戏 有多个菜单 场景 我正在尝试从一个视图控制器转换到另一个视图控制器 为此 我使用了以下代
  • 构建 iOS 应用程序后退出代码 1 错误

    我正在尝试使用 RestKit 构建我的项目 当我构建它时 我收到以下错误 我尝试使用 Apple LLVM 3 0 和 LLVM GCC 4 2 进行编译 两者都产生相同的结果 任何人有任何想法是什么导致了这个问题 Ld Users Ji

随机推荐

  • 如何在 Cast Receiver Player 中续订过期的 DRM 许可证?

    我基于以下内容开发自定义 Cast Receiver 应用程序Google Cast 应用程序框架 https developers google com cast docs caf receiver 接收器应用程序负责播放 Widevin
  • Git:使用 git rebase 更改已推送的提交消息

    我们正在开发一个有多个分支的 git 存储库 如果所有提交都以功能 ID 作为提交评论的开头 该评论必须得到公司针对该项目的批准 则系统仅允许将更改部署到实时系统上 我们在一次提交中有一个拼写错误 该提交超过了过去的 100 次提交 有几个
  • 无法在 Dropbox 文件夹中执行 heroku 的 Python 教程

    EDIT2 好吧 这很奇怪 我无法回答我自己的问题 所以我只是将其作为对问题的另一个编辑 我认为这与我尝试在 Dropbox 同步目录中进行此安装有关 我得到了这个在我的桌面上工作 谁能解释为什么会出现这种情况 原问题 我正在尝试在我的 M
  • 场景测试是连续单元测试的组吗?

    我读了维基百科 http en wikipedia org wiki Scenario testing关于场景测试的文章 但我很遗憾地说它很短 我想知道 场景测试是连续单元测试的集合吗 或者 也许像单个多步骤单元测试 许多框架是否支持场景测
  • 如何使用 java 中的 swing 在 jeditorpane 中的超链接上添加悬停效果

    使用jEditorPane 中的超链接 https stackoverflow com questions 3693543 hyperlink in jeditorpane链接 我设法在 jEditorPane 中获取超链接 但现在我想为超
  • 开发过程中样式未应用于 vue web 组件

    在开发 Vue Web 组件时 style不应用于Web组件 而是添加到head该文件的 这意味着样式在影子 DOM 中被忽略 以下是我在 main js 中包装 Web 组件的方法 import Vue from vue import w
  • Multer 和快速验证器在验证中造成问题

    我正在提交带有图像的表格 使用下面的代码 router post upload upload image single categoryLogo categoryRules categoryCreationRules validate ca
  • 引用外部对象的 JavaScript 作用域

    基本上 我使用一个名为的元类框架Joose http joose it对于 Javascript 它允许我使用更优雅的类语法 但我不知道如何从类声明的更深层次方法中引用对象的范围 我还使用 require js 进行依赖管理 这是一个类定义
  • jQuery自动上下滚动div

    我写了一个fiddle http jsfiddle net f7e3d440 8 自动上下滚动 div 效果很好 但是向下滚动时存在问题 它不显示最后一行 在本例中为 String4 有人可以帮我解决这个问题吗 div class cont
  • 在 ASP.Net 中运行时按名称隐藏 GridView 列

    是否可以在运行时按名称显示 隐藏 GridView 列 我可以通过索引来做到这一点 如下所示 gridReviews Columns 4 Visible false 不过我想执行以下操作 gridReviews Columns Name V
  • Terraform:如何读取地图列表?

    请参阅下面的示例 data aws kms secrets api key count length keys var keys secret name secret name payload element values var keys
  • 显式保存与隐式保存 - 什么时候更喜欢什么?

    我目前正在开发一个 wp7 应用程序 不想透露太多 但我在用户交互方面遇到了一些困难 我不确定的主要问题是 我应该在对话框中提供显式保存按钮并使用手机后退按钮作为取消 还是应该隐式保存用户点击手机后退按钮的时间 我想得越多 我就越不确定什么
  • 如何在 Scala JLine 调用之间保存和加载历史记录

    我在用着Scala JLine http search maven org artifactdetails 7Corg scala lang virtualized 7Cjline 7C2 10 2 RC1 7Cjar在我的 CLI 程序中
  • MySQL 5.5 至 5.7 停止使用索引

    我有 Magento 1 9 2 1 并在Apache2和MySQL 5 5上成功运行 我尝试将其迁移到另一台服务器并使用 NGINX 和 MySQL 5 7 但网站开始变得非常慢 12 秒对 2 秒 经过几个小时的调试 我发现一个查询有问
  • 简单的 PHP 联系表格未发送[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 发完更多帖
  • 如何在Steam WebAPI中通过AppName获取steam AppID

    所以我试图通过输入游戏名称来启动蒸汽游戏 为此我问自己是否可以通过输入的名称找出steam App ID 所以我尝试通过我的 steamApps 文件夹收集 ID 但没有成功 我还找到了一个网站 您可以在其中搜索特定游戏的名称 例如 htt
  • 期间发生内部错误:“更新 Maven 项目

    当我转换为 Maven 项目时 错误是 gt An internal error occurred during Updating Maven Project gt Unsupported IClasspathEntry kind 4 有什
  • 使用 Ajax 下载 JQuery 文件

    当我的用户选择生成报告时 我使用 John Culviner 出色的 fileDownload 插件来生成 请稍候 消息 当用户单击链接时 我向 PHP 发送一个 ajax 请求 该请求在服务器上生成 PDF 此时 我正在尝试更新 file
  • 调用未定义的函数curl_init(),即使它在php7中启用

    我刚刚在我的 Ubuntu 上安装了 php7 起初 没有任何问题 我的网站可以运行 但突然间 它开始返回 Call to undefined function curl init 错误 现在 我的页面包含的curl代码不起作用 在 php
  • 在 SwiftUI 3.0 iOS 15 中调整视图与键盘显示

    我的注册页面有VStack嵌入一 个ScrollView嵌入在VStack 在最里面VStack我有一系列TextField与定制TextFieldStyle 注册页面的 UI 如下所示 VStack ScrollView VStack s