为什么我的文本字段似乎不为零,即使我将该字段留空?我的 if 语句的“else”部分没有被读取

2023-12-07

我正在通过制作一个保存客户数据的应用程序来练习快速编程。该应用程序有几个文本字段,人们应该在其中输入姓名、电子邮件地址、电话号码和购买的产品数量。然后通过“提交”按钮,他们将该信息保存到数据库中。但是,如果其中一个字段为空,则应抛出错误,并向用户显示一条消息,让他/她知道其中一个字段为空。

问题是,即使文本字段为空,编译器也不会将其读取为 nil,所以我的条件不起作用。

为了简单起见,我省略了很多代码。我只会使用一个 UITextField(客户姓名),并且我的条件将检查 TextField 是否为空。如果为空,则应打印“请输入有效名称”。如果不为零,则应打印客户的姓名。

class RaffleViewControler: UIViewController, UITextFieldDelegate {


    @IBOutlet weak var customerNameTextField: UITextField!

    @IBAction func addCustomerName(_ sender: UITextField) {


    }


    @IBOutlet weak var submitButton: UIButton!


    @IBAction func submitCustomer(_ sender: UIButton) {

           if let name = customerNameTextField.text {
            print(name)

        } else {
            print("Please enter a valid name")
        }
}

另外,我还按照以下格式检查我的状况:

@IBAction func submitCustomer(_ sender: UIButton) {

               if customerNameTextField.text != nil {
                print("Congrats. Your data is in our database")

            } else {
                print("Please enter a valid name")
            }
  }

问题:

即使我将文本字段留空,编译器也不会读取条件的“else”部分。这似乎表明该字段永远不会为零。可能发生什么情况?


据苹果公司称docs:

该字符串默认为@""。

IE。默认情况下它不为零。

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

为什么我的文本字段似乎不为零,即使我将该字段留空?我的 if 语句的“else”部分没有被读取 的相关文章

  • SwiftUI 检测用户何时截取屏幕截图或屏幕录制

    On UIViewController我们可以轻松地将观察者添加到控制器 喜欢 class ViewController UIViewController override func viewDidLoad super viewDidLoa
  • Draggable Boxview 不更新 Xamarin

    我的第一个问题是框视图生成在左上角 而不是我指定的设计网格第 10 行和网格第 3 列 第二个问题在于可拖动视图 在代码本地可拖动视图的第一部分中 它正确地调用了触摸事件 但也许它没有在GUI中更新
  • SKScene和SKView的paused属性之间的区别

    我使用以下代码暂停 SKScene self paused YES 然而 根据这个answer https stackoverflow com a 21593852 2043580 by 安德烈 戈尔杰耶夫 https stackoverf
  • 在 UITableViewCell 内动态更改标签宽度

    我正在尝试建立一个自定义表格视图 正如您在图片中看到的 我在故事板一侧将标签的宽度默认设置为 160 磅 并在加载表格时动态更改宽度 我通过修改 cellForRowAtIndexPath 委托方法来实现此目的 因此 根据日期的长度 我设置
  • iPad Safari Web Inspector 在页面加载时崩溃

    我有一个用 WordPress 制作的以视频为中心的网站 当我们在 iPad 上测试网站时 我们将其连接到 Mac 笔记本电脑并打开 safari 开发人员工具来检查是否有任何错误等 我们的主页上一切正常 但当我们转到我们添加的任何视频帖子
  • 致命错误:在 flutter 中找不到“Flutter/Flutter.h”文件

    这是错误 在文件中包含来自 Users chetan pub cache hosted pub dartlang org webview flutter 1 0 7 ios Classes JavaScriptChannelHandler
  • 如何计算CLLocationDistance的中心坐标

    我想计算我的位置和一些注释之间的中心点 到目前为止我已经这样做了 CLLocation myLoc self locMgr location MKPointAnnotation middleAnnotation locationV anno
  • WKWebView在后台,几个奇怪的断言

    我想找出iOS中当前浏览器的userAgent 所以在 Xcode 创建的默认项目中我添加了 import ViewController h import
  • 在 Safari 中快速打开链接

    我目前正在我的应用程序中打开链接WebView 但我正在寻找一个打开链接的选项Safari反而 它不是 融入 Swift 但你可以使用标准UIKit方法来做到这一点 看看 UIApplication 的openUrl https devel
  • 如何使用呼叫目录扩展来识别应用程序中的来电?

    我正在研究callKit框架 我发现通过使用呼叫目录扩展 我们可以识别来电电话号码 我的问题是如何在 iOS 应用程序中实现呼叫目录扩展来识别来电详细信息 我在 Objective C 工作 让一个数 919876xxxxx 使用此方法添加
  • 如何让位置音频在 SceneKit 中工作?

    我在使位置音频在 SceneKit 中工作时遇到问题 从 Xcode 生成的 SceneKit 游戏模板开始 我将以下代码添加到handleTap 方法的末尾 let ship scnView scene rootNode childNod
  • 重新组织链式可观察量

    我有一大块链接的 Rx 可观察量 当通过选择表视图行时会触发这些可观察量table rx modelSelected 我希望能够打破这个逻辑 因为我目前必须在flatMapLatest 因为这是流程的 第一步 感觉不对 我必须在后续执行更多
  • 移动设备上的 TensorFlow(Android、iOS、Windows Phone)

    我目前正在寻找不同的深度学习框架 特别是用于训练和部署卷积神经网络 要求是 它可以在带有 GPU 的普通 PC 上进行训练 但训练后的模型必须部署在三个主要的移动操作系统上 即 Android iOS 和 Windows Phone Ten
  • 如何在 iOS 6 中强制 UIViewController 为纵向

    As the ShouldAutorotateToInterfaceOrientation在 iOS 6 中已弃用 我用它来强制特定视图仅肖像 在 iOS 6 中执行此操作的正确方法是什么 这仅适用于我的应用程序的一个区域 所有其他视图都可
  • 在后台继续下载

    我正在创建一个应用程序 其中我从服务器下载一些数据 在后台运行时 我希望连接继续运行 以便可以下载数据 我知道有方法应用程序委托 void applicationDidEnterBackground UIApplication applic
  • UNTimeIntervalNotificationTrigger nextTriggerDate() 是否给出了错误的日期?

    我正在更新本地通知以与 iOS 10 配合使用 但遇到了一个问题 我认为 nextTrigger 函数返回的不是 满足触发条件的下一个日期 而是返回当前日期时间加上您最初设置 UNTimeInvervalNotificationTrigge
  • 如何使用固定宽度和自动布局正确缩放图像?

    我有一个动态 UIImage 和一个固定宽度为 280 0px 的 UIImageView 并且我正在使用自动布局 在 UIImage 视图上 我设置了宽度和高度约束 并降低了高度约束的优先级 我选择了 aspect fit 并将内容拥抱和
  • iOS 开发:如何强制 UIWebView 加载 Facebook 的非移动版本?

    我正在深入研究 iOS 开发 当我尝试在 UIWebView 中加载特定的 Facebook 粉丝页面时 它会加载该网站的移动版本 该版本仅加载粉丝页面的墙 而不是我需要加载的特定选项卡 在我的应用程序的 iPad 版本中 UIWebVie
  • iOS 11 中的密码自动填充快速输入栏

    iOS 11 中引入了一项新功能 应用程序密码自动填充 此功能允许用户直接从键盘快速输入栏使用其应用程序中保存的密码 https techcrunch com 2017 06 08 ios 11s new password autofill
  • 构建 iOS 应用程序后退出代码 1 错误

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

随机推荐

  • 在两个上下文之间共享纹理/图像而不需要上下文共享的最佳方法是什么?

    我想要做的是从一个上下文中获取渲染结果 并在另一个不与前一个上下文共享的上下文中进行进一步的渲染 我能想到的唯一方法是使用像 API 这样的 glReadPixels 将渲染结果从 GPU 内存复制到系统内存 并在另一个上下文中使用复制的数
  • php date() 比服务器时间提前一小时(夏令时问题)

    我正在尝试排查并解决这个问题 我正在使用的服务器 Linux 上的 php 5 2 9 具有正确的本地时间 America Buenos Aires user server home site public html date Mon No
  • 合并sqlite

    最近在读sqlite3的源码 在合并版本中 只有四个文件 上官方网站 他们说 合并也使其运行得更快 当我们使用合并来编译 SQLite 而不是单独的源文件时 我们测量到性能提高了 5 到 10 我不明白他们是如何做到的以及为什么 有人有什么
  • NetUIHWND 和 DirectUIHWND [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 使用Spy 工具 似乎某些微软应用程序使用网络UIHWND and 直接UIHWND窗口类 例如 Word 2010 的功能区似乎是 NetUIHW
  • ActiveAdmin:编辑模型实例时下拉菜单太大

    我有两个模型 UserDevice and UserInfo如下 在 schema rb 中 create table user devices force cascade do t t integer user info id t str
  • 在 Neo4j 中将实体与适当的关系相关联?

    我尝试使用 Neo4j 对项目 员工和项目角色之间的关系进行建模 每个项目都有一个称为 项目经理 的角色和一个称为 总监 的角色 我试图在数据模型中实现的是能够说 对于项目 A 主管是员工 X 就我的目的而言 重要的是 项目 员工 和 角色
  • AT&T 汇编语言中的“.=”是什么意思?

    我正在尝试编写一个启动程序 内容如下 text balabala globl start start balabala start 510 byte 0x55 0xaa 顺便说一句 我也无法理解 byte 0x55 0xaa 是什么意思 它
  • 给定一组 n 个整数,返回总和为 0 的 k 个元素的所有子集

    给定一组未排序的n整数 返回总和为 0 的所有大小为 k 的子集 即每个集合有 k 个唯一元素 所以我给了面试官以下解决方案 我研究过极客观点 没有使用额外的空间 一切都就地完成 等等 但是当然成本是 O n k 的高时间复杂度 其中k t
  • django-autocomplete-light 错误 = 'list' 对象没有属性 'queryset'

    我是 django 的新手 我需要你的帮助 在设置我的测试之后 我已经尝试了很多天来理解 django autocomplete light http 192 168 0 108 8000 country autocomplete 工作 数
  • 将列变量字符串从“1”更改为“01”

    我在数据框中有一列是字符类型 变量是 1 01 2 01 3 03 4 04 等的混合 我如何选择所有没有前导 0 和格式的内容 以便它们都是 01 02 03 04 等 我们需要首先将其转换为numeric并使用sprintf df1 c
  • 使用 NetworkX 测量图之间的相似性

    I have 两张图A and B 它们可能是同构的 完全不同的 或者有一些相似之处 很少有节点是相同的 或者很少有节点共享相同的边 我想看看 检查这些图表有多么不同 相似 networkx is isomorphic 是一种方法 然而 这
  • Kohana ORM 和验证,有问题

    尝试使用适用于 Kohana 3 2 的 ORM 进行验证 目前我有我的模型
  • New-Object:找不到“PSCredential”的重载且参数计数:“2”

    我希望将一封电子邮件发送给多个收件人 而且我不想提示输入用户名和密码 所以我使用了下面的字符串转换 但随后我遇到了下面的错误消息 您能否提出解决此问题的答案 string ValidateNotNullOrEmpty secpasswd Q
  • 如何从 NSImage 保存 PNG 文件(视网膜问题)

    我正在对图像进行一些操作 完成后 我想将图像以 PNG 格式保存在磁盘上 我正在执行以下操作 void saveImage NSImage image atPath NSString path image lockFocus NSBitma
  • 从(任意)连续概率分布进行模拟[重复]

    这个问题在这里已经有答案了 例如 对于实数线上定义的归一化概率密度函数 p x 2 pi 1 exp x exp x 这只是一个例子 该解决方案应该适用于我们可以定义的任何连续 PDF R 中是否有一个包可以从发行版进行模拟 我知道 R 的
  • VBA 中表单宽度和高度的单位是什么?

    我正在为 Word 2007 编写 VBA 程序 我创建了一个用户窗体 需要使用脚本调整其大小 我注意到它不是像素 Me Width pixelW form appears about 20 larger than the pixel wi
  • gensim TransformedCorpus数据高效转换为数组

    是否有比下面的逐行方法更直接或更有效的方法将主题概率数据从 gensim interfaces TransformedCorpus 对象获取到 numpy 数组 或者 pandas 数据帧 from gensim import models
  • VBA:写入日志文件的子程序

    我在工作簿中定义了一组宏 我想向用户提供在日志文件中记录与这些宏相关的事件的选项 我通过在 ThisWorkbook 中创建以下内容来启动日志 Public writeLog as Boolean Public logWrite as Ob
  • 使用 Jackson 序列化枚举

    我有一个如下所述的枚举 public enum OrderType UNKNOWN 0 Undefined TYPEA 1 Type A TYPEB 2 Type B TYPEC 3 Type C private Integer id pr
  • 为什么我的文本字段似乎不为零,即使我将该字段留空?我的 if 语句的“else”部分没有被读取

    我正在通过制作一个保存客户数据的应用程序来练习快速编程 该应用程序有几个文本字段 人们应该在其中输入姓名 电子邮件地址 电话号码和购买的产品数量 然后通过 提交 按钮 他们将该信息保存到数据库中 但是 如果其中一个字段为空 则应抛出错误 并