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

UIAlertController:文本字段不返回字符串

UIAlertController是iOS开发中的一个类,用于创建弹出式的用户界面,用于显示警告、确认和输入框等交互式信息。它通常用于在iOS应用程序中显示警告、确认和输入框等用户提示。

文本字段是UIAlertController中的一种输入框类型,用于让用户输入文本信息。然而,UIAlertController的文本字段并不直接返回字符串,而是通过回调函数来获取用户输入的文本。

在创建UIAlertController时,可以通过添加文本字段来指定需要的输入框数量和样式。然后,可以通过添加UIAlertAction来定义用户操作的按钮,例如确认、取消等。

当用户点击确认按钮时,可以通过实现回调函数来获取用户在文本字段中输入的文本。回调函数会将UIAlertController作为参数传递,通过访问文本字段的text属性,可以获取用户输入的文本。

以下是一个示例代码,演示了如何创建一个带有文本字段的UIAlertController,并获取用户输入的文本:

代码语言:swift
复制
// 创建UIAlertController
let alertController = UIAlertController(title: "输入文本", message: nil, preferredStyle: .alert)

// 添加文本字段
alertController.addTextField { (textField) in
    textField.placeholder = "请输入文本"
}

// 添加确认按钮
let confirmAction = UIAlertAction(title: "确认", style: .default) { (action) in
    if let textField = alertController.textFields?.first {
        let text = textField.text ?? ""
        // 在这里处理用户输入的文本
        print("用户输入的文本:\(text)")
    }
}

// 添加取消按钮
let cancelAction = UIAlertAction(title: "取消", style: .cancel, handler: nil)

// 将按钮添加到UIAlertController
alertController.addAction(confirmAction)
alertController.addAction(cancelAction)

// 显示UIAlertController
present(alertController, animated: true, completion: nil)

在上述示例中,我们创建了一个带有一个文本字段的UIAlertController。用户输入的文本可以通过访问alertController.textFields?.first?.text来获取。在确认按钮的回调函数中,我们可以处理用户输入的文本,例如打印到控制台或进行其他操作。

对于腾讯云相关产品和产品介绍链接地址,由于要求不能提及具体品牌商,我无法提供具体的链接。但是,腾讯云提供了丰富的云计算服务,包括云服务器、云数据库、人工智能等,可以根据具体需求选择适合的产品。您可以访问腾讯云官方网站,查看他们的产品和服务,以及相关文档和案例。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【IOS开发基础系列】UIAlertController专题

UIAlertAction由标题字符串、样式以及当用户选中该动作时运行的代码块组成。...文本对话框         UIAlertController极大的灵活性意味着您不必拘泥于内置样式。...Objective-C版本: UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"文本对话框...假定我们要让“登录”文本框中至少有3个字符才能激活“好的”按钮。很遗憾的是,在UIAlertController中并没有相应的委托方法,因此我们需要向“登录”文本框中添加一个Observer。...在iOS 8中我们不再需要小心翼翼地计算出弹出框的大小,UIAlertController将会根据设备大小自适应弹出框的大小。并且在iPhone或者紧缩宽度的设备中它将会返回nil值。

48930

iOS10.3后允许App运行中变更App图标

我们需要在 Info.plist 中添加一些字段,如图所示: 其中Primary用来放初始图标,我们以前在Assets中放图标,其实也会生成这个键,Icon files 中是图片数组,按理是应该放置不同尺寸的图片...在按钮的响应方法中,我们首先要判断当前系统支不支持换图标,不支持则直接返回。...去掉变更图标时的提示框 这个提示框是用 UIAlertController 来实现的,而所有的 UIAlertController 都是通过 presentViewController: animated...的 title 和 message 是否都为 nil,是的话就直接返回,也就不会弹出了;不是的话就正常弹出,这个我们通过调用系统的实现就可以了。...class]]) {// 要弹出的是UIAlertController // 输出到控制到可以发现两者都是null NSLog(@"title : %@",((UIAlertController

81720

【swift学习笔记】一.页面转跳的条件判断和传值

在第二个窗体上放两个label和一个按钮,并指定一个ViewController 3.创建Segue连接两个窗体,打开模式选择modal,并给Segue命名为"openView" 3.页面1 中创建输入文本框的引用和按钮的点击...Action 在Action里判断文本是否有数据,如果没有则弹出提示,如果有则打开新窗体 @IBAction func passNameToView(sender: AnyObject) {...let okText = "Ok" let alert = UIAlertController(title: title, message: message...4.从新窗体返回原窗体 页面2中的按钮建立一个Action代码如下 @IBAction func backToParent(sender: AnyObject) { self.dismissViewControllerAnimated...(true, completion: nil) } 二.页面传值 1.在页面2中声明一个字符串变量用于接收传过来的信息和一个lable的引用,在加载完窗体后显示在label中 @IBOutlet

1.3K70

WKWebView的使用与JS交互详细解读

3.在原生得到结果后,需要回调给JS,通过completionHandler 回调给JS 4.completionHandler 回调的参数和返回值都是空 /** 下面这三个方法根据前面的字面意思就能区分记住...message initiatedByFrame:(WKFrameInfo *)frame completionHandler:(void (^)(void))completionHandler { UIAlertController...*alert = [UIAlertController alertControllerWithTitle:@"alert"message:@"JS调用alert"preferredStyle:UIAlertControllerStyleAlert...,通过completionHandler回调给JS 4.大家注意这个回调的completionHandler参数是字符串 // runJavaScriptTextInput // 要求用户输入一段文本...// 在原生输入得到文本内容后,通过completionHandler回调给JS 大家注意这个回调的completionHandler参数是字符串 -(void)webView:(WKWebView

3.1K70

wkwebview加载完成_【Swift】WKWebView与JS的交互使用

completion: nil) } // confirm //作为js中confirm接口的实现,需要有提示信息以及两个相应事件, 确认及取消,并且在completionHandler中回传相应结果,确认返回...默认需要有一个输入框一个按钮,点击确认按钮回传输入值 //当然可以添加多个按钮以及多个输入框,不过completionHandler只有一个参数,如果有多个输入框,需要将多个输入框中的值通过某种方式拼接成一个字符串回传...-> Void) { let alertViewController = UIAlertController(title: prompt, message: "", preferredStyle...: UIAlertController.Style.alert) alertViewController.addTextField { (textField) in textField.text...,结果为一个元素;如果没找到匹配的元素,则返回null document.querySelectorAll()//css选择符模式,返回与该模式匹配的所有元素,结果为一个类数组 六、JavaScriptCore

5.6K00

iOS微信第三方登录实现

[self setupAlertController]; } } #pragma mark - 设置弹出提示语 - (void)setupAlertController { UIAlertController...因为微信授权后access_token(2小时)之类的字段都是有效期的在有效期范围内,我们是没必要让用户再次授权的,很可能你的实现,会如我下面所写的(LoginViewController) // LoginViewController.h...[self setupAlertController]; } } #pragma mark - 设置弹出提示语 - (void)setupAlertController { UIAlertController...用户换取access_token的code,仅在ErrCode为0时有效 state 第三方程序发送时用来标识其请求的唯一性的标志,由第三方程序调用sendReq时传入,由微信终端回传,state字符串长度不能超过...SCOPE", // 用户授权的作用域,使用逗号(,)分隔 "unionid":"o6_bmasdasdsad6_2sgVt7hMZOPfL" // 只有在用户将公众号绑定到微信开放平台帐号后,才会出现该字段

2.4K40

iOS开发-用户定位获取-CoreLocation的实际应用-CLLocationManger获取定位权限-CLLocation详细使用方式

---- CLLocationManager申请定位权限 那我们就开始了,首先要去项目的target里设置info.plist文件字段(苹果的隐私安全需求,添加是不允许使用的),如下图标注的三个字段:...然后我们开始去获得定位 ---- CLLocationManager获取用户定位 CLLocationManager在获取定位的时候是通过代理方法实现的,该方法包装了类型为CLLocation的定位数据数组,并返回给代理中...* alertVC = [UIAlertController alertControllerWithTitle:@"提示" message:@"定位错误,请检查手机网络以及定位" preferredStyle...上代码: - (void)learningCLLocation{ /** 定位管理器返回的位置是用CLLoation实例表示的,里面包含了有关位置的重要信息 比如: CLLocationCoordinate2D...latitude, longitude) 创建一个经纬度坐标 coordinate.latitude,coordinate.longitude 读取经纬度 CLLocationDistance 用来表示实际位置和返回坐标之间的距离

4.2K20

WKWebView 那些坑

B、检测 webView.title 是否为空 并不是所有H5页面白屏的时候都会调用上面的回调函数,比如,最近遇到在一个高内存消耗的H5页面上 present 系统相机,拍照完毕后返回原来页面的时候出现白屏现象...上请求不会自动携带 Cookie, 目前的主要解决方案是: a、WKWebView loadRequest 前,在 request header 中设置 Cookie, 解决首个请求 Cookie 带上的问题...实际上,即便在 UIWebView 上也建议直接调整webView.scrollView.contentInset的值,这确实会带来一些奇怪的问题。...在接入 now 直播的时候,我们发现在 iOS 9 上 WKWebView 会出现页面被拉伸变形的情况,最后发现是window.innerHeight值不准确导致(在WKWebView上返回了一个非常大的值...无奈之下,我们只能约定一个JS接口,让游戏开发商实现该接口,具体是通过 canvas getImageData()方法取得图片数据后返回 base64 格式的数据,客户端在需要截图的时候,调用这个JS接口获取

4.5K130

# iOS导航栏控制Tips

许久写UI,对UI的很多东西都生疏了,最近使用导航栏的各种场景做一些总结。 1.导航栏的显示与隐藏 导航栏的显示与隐藏,分两种情况: 1.从不显示导航栏的页面push到显示导航栏的页面。...其他手势的处理 return NO; } 2.统一重写导航栏返回按钮 有时候,我们可能需要统一工程中的返回按钮样式,比如都是 箭头+返回 或者都是 箭头。...BOOL)navigationShouldPopWhenBackButtonClick { BOOL isFlag = 输入框不为空等等条件 if (isFlag) { UIAlertController...style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) { // 这里延时执行是因为UIAlertController...保存" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { // 这里延时执行是因为UIAlertController

1.7K31
领券