首页 文章 精选 留言 我的

精选列表

搜索[Swift开发],共10000篇文章
优秀的个人博客,低调大师

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

在转跳页面之前我们可能会判断一下是否有输入正确的数据,如下图所示,如果没有数据输入则弹出提示,不进行转跳。 一:页面转跳 1.第一个页面的上放上一个Label一个textfield和一个按钮 2.在第二个窗体上放两个label和一个按钮,并指定一个ViewController 3.创建Segue连接两个窗体,打开模式选择modal,并给Segue命名为"openView" 3.页面1 中创建输入文本框的引用和按钮的点击Action 在Action里判断文本是否有数据,如果没有则弹出提示,如果有则打开新窗体 @IBAction func passNameToView(sender: AnyObject) { guard let text = teName.text where !text.isEmpty else { let title = "Warning" let message = "please enter name!" let okText = "Ok" let alert = UIAlertController(title: title, message: message, preferredStyle: UIAlertControllerStyle.Alert) let okButton = UIAlertAction(title: okText, style: .Cancel, handler: nil) alert.addAction(okButton) presentViewController(alert, animated: true, completion: nil) return; } self.performSegueWithIdentifier("openView", sender: self) // or if let text = teName.text where !text.isEmpty } 这样就可以打开新窗体了。 4.从新窗体返回原窗体 页面2中的按钮建立一个Action代码如下 @IBAction func backToParent(sender: AnyObject) { self.dismissViewControllerAnimated(true, completion: nil) } 二.页面传值 1.在页面2中声明一个字符串变量用于接收传过来的信息和一个lable的引用,在加载完窗体后显示在label中 @IBOutlet weak var receiveName: UILabel! var receivedStr: String = "" override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. receiveName.text = receivedStr } 2.页面1 重写prepareForSegue方法 把值输入的值传递给页面2 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { if segue.identifier == "openView" { if let secondView = segue.destinationViewController as? SecondViewController { secondView.receivedStr = teName.text! } } } ok整个过程完毕。 完整代码:判断条件页面转跳.zip 本文转自lpxxn博客园博客,原文链接:http://www.cnblogs.com/li-peng/p/5523533.html,如需转载请自行联系原作者

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册