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

Swift 3:如何转到以前的ViewController并重新加载它?

在Swift 3中,要返回到之前的ViewController并重新加载它,可以使用以下步骤:

  1. 确保当前的ViewController是通过导航控制器(UINavigationController)进行管理的。如果不是,可以使用以下代码将其包装在导航控制器中:let navigationController = UINavigationController(rootViewController: currentViewController)
  2. 在当前ViewController中,使用以下代码返回到之前的ViewController:self.navigationController?.popViewController(animated: true)这将从导航控制器的堆栈中弹出当前ViewController,并返回到上一个ViewController。
  3. 如果你想重新加载上一个ViewController,可以在当前ViewController中的viewWillAppear方法中执行所需的操作。viewWillAppear方法在返回到上一个ViewController并显示之前调用。

以下是一个示例代码,演示如何在Swift 3中返回到以前的ViewController并重新加载它:

代码语言:swift
复制
class CurrentViewController: UIViewController {
    // ...
    
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        
        // Reload data or perform any other necessary actions
        reloadData()
    }
    
    func goBackToPreviousViewController() {
        self.navigationController?.popViewController(animated: true)
    }
    
    // ...
}

这是一个基本的示例,你可以根据自己的需求进行修改和扩展。关于Swift和iOS开发的更多信息,你可以参考腾讯云的移动开发相关产品和文档,如腾讯云移动开发平台(https://cloud.tencent.com/product/mpp)和腾讯云移动开发文档(https://cloud.tencent.com/document/product/876)。

请注意,本答案没有提及亚马逊AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等流行的云计算品牌商,以满足问题要求。

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

相关·内容

一文读懂Xcode 9 所有更新:全新模拟器,兼容Swift低版本等

另外,这次 Xcode 9 还解决了重命名在 Swift 语言中一个老问题,就是: 常用 Swift 同学应该都知道这个,以前版本 Xcode 不支持 Swift 语言重命名操作。...Swift 低版本兼容 XCode 9 使用 Swift 4 编译器。 这次新编译器同时可以支持 Swift 3, 这样就不用立即修改项目的 Swift 代码了。...我们都知道,Xcode 左边栏中黄色小文件夹叫做 Group: 在以前 Xcode 版本中, 直接在这里面移动文件是不会影响文件系统位置,比如把 ViewController.swift 文件移动到...中打开项目设置中找到: 现在还是 Preview 版本,Xcode 后面的版本会把作为默认构建系统,感兴趣同学也可以尝试一下。...总结 总体来说,Xcode 9 这次升级相比以前版本,算是一个步伐很大更新。 全新模拟器,Wifi 调试,新构建系统,对 Swift 更加完善支持,等等这些,都算是一次质飞跃。

1.8K70

聚焦位置-选择您喜欢位置放置虚拟物体

在上一个视频中,您学习了如何检测水平曲面并能够透视。正如我所提到,它们是放置物体锚点。但是,在飞机上我们应该添加我们物体?为此,我们需要在屏幕上选择一个点。...让我们为焦点方块添加一个新Swift文件。右键单击视图控制器+ ARSCNViewDelegate选择新建文件...。然后,选择Swift File,单击Next。...真棒,我们刚刚完成了课程,但我们还没有看到。 类变量 为此,请转到ViewController.swift文件。我们将首先在sceneView声明之后为焦点方块声明一个类变量。...然而,为了在场景上定位节点,我们需要3D坐标。那么,我们如何将某些东西从2D转换为3D呢?...self绝对是必需,因为它在一个闭包中引用了ViewController类。不要太担心,随着时间推移,你将会理解所有这些对象,属性和闭包。

2.4K30

iOS-Swift 方法

那咋办,我查阅了一些资料得到以下关于生成 .sil 文件 和 .ll 文件命令。 // 将当前目录 main.swift 文件编译成 main.sil 文件保存到当前目录。...而 Swift 是一门静态语言,没有运行时机制,那原生 Swift 方法又是如何调用呢? 我们通过汇编先来看一下,调用结构体方法时,底层是如何调用。...class SHPerson { func setName1() {} func setName2() {} func setName3() {} } 前面提过,blr 指令是跳转到某地址(无返回)...源码查找虚函数表 在上一篇文章 结构体与类 中,我们把 Swift本质挖掘出来了,里面有一个 metadata,metadata 里有一个成员变量,当时归纳出来,这个成员变量应该是这样: var...bl: (branch)跳转到某地址(有返回)。 blr: 跳转到某地址(无返回)。 ret: 子程序(函数调用)返回指令,返回地址已默认保存在寄存器 lr (x30) 中。

3.1K40

平面检测-搜索真实世界表面

右键单击ViewController.swift选择新建文件...。然后,在Source下选择Swift File,点击Next。...在ViewController.swift文件中,将其删除。当我们在时,向下滚动删除Mark下注释掉代码,这是该协议下一个方法给定示例。Mark帮助我们分离文件中代码段。...你在Scene Editor中看过。您现在正在学习如何在代码中应用它。 飞机位置 所以,就像我们为手表所做步骤一样,我们需要定位。将平面节点放在检测到曲面的中心。...但是,Swift将角度存储在弧度中。如何将度数转换为弧度?我们应该回顾一下我们高中数学。为了找到弧度等价物,这里是等式。 根据图表,你会得到90度是pi一半。...幸运是,Swift有一个功能,GLKMathDegreesToRadians,所以利用它。注释掉前一行代码替换为此代码。

2.9K30

Swift 中风味各异依赖注入

本周,让我们来看看三种不同方式依赖注入,以及它们如何Swift中使用。...这种方式最大好处是,保证我们对象拥有它们所需要一切,以便立即开展工作。 假设我们正在构建一个从磁盘上加载文件FileLoader。...个简单步骤测试使用了系统单例 Swift 代码"*中技术是如何通过使用协议来为系统照片库类提供一个更抽象PhotoLibrary接口。...上述做法好处是,我们仍然可以很容易地在测试中注入模拟数据,只需重新分配视图控制器属性: class PhotoEditorViewControllerTests: XCTestCase {...工作是管理用户所写所有笔记,并提供一个API用于根据查询来搜索笔记。

64810

Swift 中风味各异依赖注入

本周,让我们来看看三种不同方式依赖注入,以及它们如何Swift中使用。...这种方式最大好处是,保证我们对象拥有它们所需要一切,以便立即开展工作。 假设我们正在构建一个从磁盘上加载文件FileLoader。...个简单步骤测试使用了系统单例 Swift 代码"中技术是如何通过使用协议来为系统照片库类提供一个更抽象PhotoLibrary接口。...上述做法好处是,我们仍然可以很容易地在测试中注入模拟数据,只需重新分配视图控制器属性: class PhotoEditorViewControllerTests: XCTestCase {...工作是管理用户所写所有笔记,并提供一个API用于根据查询来搜索笔记。

78210

Swift + RxSwift MVVM 模块化项目实践

├── Home_tCell.swift│ └── Product_tCell.swift├── ViewController│ ├── Home_vc.swift│ └── Product_vc.swift...: 模块相关管理类,包含路由注册和提供别的模块访问管理类 View: 相关自定义 View ViewController: 对应 ViewController ViewModel: 对应 ViewModel...self.refresherror.onNext(error) } }) .disposed(by: disposeBag) 上面的代码 通过信号筛选,reloadTrigger代表点击重新加载事件...,需要界面上展示网络错误,并且显示重新加载按钮,或者是如果在调用相机获取授权时用户没有授权时候,需要提示给用户授权相关信息,等等这些逻辑处理都可以通过流形式处理,在处理用户网络错误加载失败时候...,通过 RxSwift 一个很简单 Api:withLatestFrom就能实现数据重新加载,而不需要记住各种复杂参数。

3.1K101

iOS - RxSwift 项目实战记录

ReactiveX 最近刚刚把接手OC项目搞定,经过深思熟虑后,本人决定下个项目起就使用Swift(学了这么久Swift还没真正用到实际项目里。。。)...好吧,我们接下来说说如何优雅来实现tableView数据源。其实RxDataSources官网上已经有很明确使用说明,不过我还是总结一下整个过程吧。...ViewModel规范 我们知道MVVM思想就是将原本在ViewController视图显示逻辑、验证逻辑、网络请求等代码存放于ViewModel中,让我们手中ViewController瘦身。...:即可以作为Observable,也可以作为Observer,说白了就是可以发送信号,也可以订阅信号 // 外界通过该属性告诉viewModel加载数据(传入值是为了标志是否重新加载) let requestCommond...已经拿到output,当下拉加载数据时候,使用outputrequestCommond发射信息,告诉viewModel我们要加载数据 viewModel请求数据,在处理完json转模型或模型数组后修改

2.9K41

深度学习图像识别项目(下):如何将训练好Kreas模型布置到手机中

当然,我以前也开发过像ID My Pill和Chic Engine之类应用程序 ,但移动开发并不是我特长和爱好。...然后,我使用上篇文章代码重新训练模型。background类由从我系统上UKBench数据集中随机抽取250个图像组成。 在Xcode中创建一个Swift + CoreML深度学习项目 ?...第3步:向info.plist添加一个元素 我们应用程序访问相机,所以我们需要准备授权信息。这可以很容易地在info.plist中完成。 点击如图所示“+”按钮, 添加Key + Value。...它会自动导入创建相关Swift类: ? 第6步: 构建ViewController 打开ViewController .swift 导入我们需要包或框架: ?...我们在73行加载CoreML模型 。 然后,我们对给定框架进行分类,抓取76-79行结果 。

5.3K40

AppleCore ML3简介——为iPhone构建深度学习模型(附代码)

并且支持在GPU上进行训练 3)用于TensorFlowSwift Swift for TensorFlow有一个灵活、高性能类似于TensorFlow/PyTorchAPI来构建复杂神经网络架构...当你需要模型高性能希望有效地部署它们时,可以选择Swift来使用TensorFlow。...在这里,我们将看到CoreML3另一个有趣功能,我们如何利用CoreML3使用大量前沿预训练模型! 下面是Core ML 3支持模型列表。...在项目导航窗格中,选择ViewController.swift。这个文件包含了很多控制我们应用程序功能代码。...我喜欢这个行业认真对待人工智能方式,这让更广泛受众能够接触到。 我鼓励你进一步探索和尝试最新模型,如BERT,创建更有趣应用程序。

2.1K20

窥探Swift之协议(Protocol)和委托代理(Delegate)回调使用

上面的Cell中就是一个ImageView和一个Label, 布局灰常简单啦,接下来就简单介绍一下在Swift中是如何实现(说白了,和Objc实现起来大同小异)。...给上述Cell绑定相应Swift源码,关联ImageView和Label, 相应Cell(BeautifulGrillCell)代码如下所示。...我们在UIViewController上贴了一层UITableView, 所以我们需要在相应ViewController对应Swift源码中进行UITableView绑定,实现UITableViewDatasource...上面使用委托回调主要是使用Swift协议(Protocol)来实现。那么如何使用协议来实现你自己委托回调呢?这将是下面将要介绍内容。   二....认识协议,使用协议实现委托回调     接下来内容就要介绍如何使用协议来定义属于你自己委托代理回调(Delegate)了。

3.3K80

iOS 仿支付宝银行卡界面(支持Swift和OC)

为了实现相应功能,仿照支付宝银行卡卡包开发出相应页面,页面长这个样子: 二:说明目录 创建钱包视图容器WalletView 初始化WalletView加载钱包头部视图walletHeader 在钱包视图中重新加载卡片视图...初始化WalletView加载钱包头部视图walletHeader 在需要加载钱包地方初始化WalletView,自定义头部视图walletHeader和卡片视图,Demo 中以ViewController...在钱包视图中重新加载卡片视图 在钱包视图中重新加载卡片视图,在这里为了灵活修改方便使用,页面布局可以自定义,Demo中模仿支付宝页面进行设计,在CardView视图中,主要实现页面的交互等功能,具体UI...实现在ColoredCardView中实现继承于CardView,下面会详细说明,重新加载卡片视图方法源码如下: open func reload(cardViews: [CardView]) {...导入项目使用介绍 最后介绍一下该如何在项目中导入该功能,下载Demo,将Demo中FBYBankCard.framework文件和ColoredCardView.swift文件导入项目中,在需要加载页面中直接引用即可

1.4K20

Swift| 基础语法(五)

前言 总结下 swift基础语法,里面涉及到:常量&变量、Swift数据类型、逻辑分支、循环、字符串相关、数组和字典、方法书写调用等内容,考虑到阅读体验分多篇来展示,希望对大家学习swift...对象、使用ViewController界面布局文件来 // 初始化该视图控制器关联用户界面 let vc = ViewController() //通过控件加载视图...//let vc = ViewController(nibName: "ViewController", bundle: nil) bundle:nil]; // 让该程序窗口加载显示...viewController视图控制器关联用户界面 self.window?....,选中是蓝色,下面修改成橙色: //图片文字一起变色 self.tabBar.tintColor = UIColor.orangeColor() 如何显示原始图片颜色和图案?

2K30
领券