草庐IT

ios - 为 segue 做准备没有按预期工作

我想使用performSegue移动到另一个View,如下所示self.performSegue(withIdentifier:"successRegistration",sender:nil)我想在我的目标View中显示一个警报,所以我重写了下面的准备功能overridefuncprepare(forsegue:UIStoryboardSegue,sender:Any?){ifsegue.identifier=="successRegistration"{loginModel.alert(fromController:self)print("working")}}但是prepare函

ios - 如何让 segue 等待功能在按下按钮时完成?

我有一个swift应用程序,它在一个ViewController上获取一些gps数据,然后将该数据传递给另一个ViewController。我目前的方法涉及一个按钮,用户将在其中输入一些数据,点击此按钮,然后该按钮应执行两个操作,计算gps路线,并执行到下一个ViewController的segue。但是,我似乎无法让segue在进入下一个屏幕之前等待我的计算完成。如果我登陆第二个View然后按返回键,然后再次按按钮,数据将显示在第二个屏幕上,但我似乎无法立即让它工作。我关注了这个问题:SeparateButtonactionandsegueaction而且还是有问题我是一个完全的sw

ios - 使用 shouldPerformSegueWithIdentifier 快速取消 segue

我有一个检查登录是否正确的功能。如果没问题,我会显示下一个屏幕。如果用户不正确,我会取消segue并显示警报。问题的出现是因为当我在shouldPerformSegueWithIdentifier函数中调用这个函数时,我给一个bool变量赋值(如果用户正确与否)然后shouldPerformSegueWithIdentifier的返回值就是这个bool值。问题是它不采用该值并保持默认值。这是我的代码:overridefuncshouldPerformSegueWithIdentifier(identifier:String!,sender:AnyObject!)->Bool{varus

ios - Swift 通过 prepareForSegue 设置属性

在Objective-C中,我可以很容易地向.h添加一个属性。文件...@property(nonatomic,strong)Person*person;然后在prepareForSegue:withIdentifier:期间设置此属性.在这个例子中,ViewController的类是PersonViewController.它旨在显示有关特定Person的信息目的。它需要一个Person对象显示任何内容和Person对象不会改变。显示不同的人需要并弹出并推送到PersonViewController的不同实例.对我来说,这表明在Swift中person属性应该这样定义......le

ios - 准备 segue 的多个条件不起作用

我正在使用prepareforsegue在ViewController之间发送数据,第一个if条件在标识符为“ShowPost”时起作用并将url发送到ViewController。但是当标识符是“profileInfo”时,segue不会发送数据。overridefuncprepareForSegue(segue:UIStoryboardSegue,sender:AnyObject?){ifsegue.identifier=="ShowPost"{ifletindexPath=tableView.indexPathForSelectedRow{let_url=searchResult

iOS:有没有一种方法可以根据单击的表格 View 单元格使用条件 segue

我正在尝试创建与闹钟应用中日期时间选择器下方的控件类似的控件。看起来这些控件是表格View单元格。我想要多个tableview单元格,但是当用户单击它时,单元格的segue会将它们带到所单击单元格的ViewController。换句话说,如果用户点击AlarmApp的“Repeat”单元格,segue会将用户带到“Repeat”ViewController。如果用户单击“Label”,单元格的segue会将用户带到“Label”ViewController。那么,是否可能有这种类型的条件转场?Swift中的任何示例/链接将不胜感激。提前致谢。 最佳答案

swift - 如何准备 segue 并将数据从一个标签发送到另一个标签?

我正在开发一个二维码阅读器应用程序。这是代码:varcaptureSession:AVCaptureSession?varvideoPreviewLayer:AVCaptureVideoPreviewLayer?varqrCodeframeView:UIView?@IBOutletweakvarCancelButton:UIButton!@IBOutletweakvarLabel:UILabel!overridefuncviewDidLoad(){CancelButton.hidden=trueLabel.hidden=truesuper.viewDidLoad()//Doanyadd

swift - iOS QR 代码扫描仪多次触发操作

我正在使用来自AppCoda(http://www.appcoda.com/qr-code-reader-swift/#comments)的二维码阅读器代码并将其转换为Swift3。基本代码运行良好。然而,我想要实现的是从QR阅读器中检索一个字符串,将其存储在一个变量中,并将该变量传递给下面的ViewController。所以我向其中添加了一些代码以获得以下内容:funccaptureOutput(_captureOutput:AVCaptureOutput!,didOutputMetadataObjectsmetadataObjects:[Any]!,fromconnection:A

swift - 在 VIPER 架构中在哪里以及如何执行转场?

作为初学者,我曾经在ViewControllers中执行转场。此外,Apple鼓励这种方法,因为UIViewController有方法performSegue和prepareForSegue。但是在学习VIPER时,我读到Router负责场景之间的转换。第二件事是,根据像这样的VIPER流程图:Router不得与View绑定(bind)。我绝对不想拒绝使用segues,因为它非常强大,可以让我轻松地在ViewControllers之间传输数据。那么,我应该如何在ViewControllers之间执行转换? 最佳答案 在纯VIPER中

ios - swift 4 - 如何在 segue 动画完成后在目标 View Controller 中运行代码?

所以我有2个ViewController,我想使用自定义动画从viewcontroller1到viewcontroller2。这是我的自定义动画的代码:lettransition=CATransition()transition.duration=0.5transition.timingFunction=CAMediaTimingFunction(name:kCAMediaTimingFunctionDefault)transition.type=kCATransitionPushtransition.subtype=kCATransitionFromRightself.view.wi