草庐IT

ViewController3

全部标签

swift - 如何克服导航到其他 viewcontroller iOS swift 的延迟?

我最近停止使用Alamofire进行HTTP网络调用,因为现在在swift4Apple引入了Codable-protocol,与相比,它非常强大和快速阿拉莫菲尔。一切都按预期正常工作,甚至我的react比以前更快。但是有一个问题。在使用Codable协议(protocol)解析数据之前,我导航到其他View的速度非常快。但是现在我的导航有轻微的延迟,特别是当导航到我使用JSONDecoder获取响应的页面时。例如:我有VC1和VC2,VC1是一个静态页面,在VC2中我使用JSONDecoder并获取一些数据并将其显示在collectionView中。现在我在VC1中单击一个按钮,它在转

swift - 加载 ViewController Swift - 黑屏

我试图在单击按钮时简单地加载一个新的ViewController及其关联的xib,但在加载新View后屏幕变黑。单击按钮时,将调用以下方法:letvc=MainViewController()self.showViewController(vc,sender:nil)我能够调试并看到我们正在跳入新“MainViewController”类的viewDidLoad方法,但UI未呈现且屏幕为黑色。我已将MainViewController.xib的文件所有者设置为MainViewController.swift类,但没有任何反应。super()也在类中被调用。MainViewControl

swift - 在 Swift 中使用 Container 查看另一个 ViewController 时按协议(protocol)传递数据

我开始研究thisquestion应用程序。我从类别的tableView开始:对于数据交换,我决定使用一个协议(protocol):protocolCategory{funcdata(object:AnyObject)}在第一个ViewController中有如下代码:classViewController:UIViewController{varitems:[String]=["Desktop","Tablet","Phone"]letCategoriesData:Category?=niloverridefuncviewDidLoad(){super.viewDidLoad()Ca

swift - 如何将 UITableViewController 显示为 UIPopover ViewController

我需要使用tableviewController显示弹出窗口。我正在使用以下代码来呈现弹出框函数showPopOver(){letsecondStoryboard=UIStoryboard(name:"Second",bundle:nil)viewObj=secondStoryboard.instantiateViewControllerWithIdentifier("ViewController")as!ViewControllerviewObj.modalPresentationStyle=UIModalPresentationStyle.PopoverviewObj.prefer

ios - 在随机 ViewController 中设置值(随机 segue)

我有12个ViewController。我的代码为其中一个ViewControllers(1-12)提供了一个随机segueletsegues=["View1","View2","View3","View4","View5","View6","View7","View8","View9","View10","View11","View12"]letindex=Int(arc4random_uniform(UInt32(segues.count)))letsegueName=segues[index]self.performSegueWithIdentifier(segueName,se

ios - 从 ContainerView 委托(delegate)给父 ViewController

我有以下设置:StartViewController有一个包含ContainerViewController的ContainerView我试图找到一种方法,在ContainerViewController中执行任务后隐藏StartViewController中的元素。为此,我尝试使用这样的委托(delegate)方法:启动ViewControllerclassStartViewController:UIViewController,showBannerAdDelegate{@IBOutletweakvarbannerView:UIView!overridefuncviewDidLoad

ios - 无法在 ViewController 中查看 deinit

我有2个VC,LoadViewController和HomeViewController。这是在我的LoadViewController中:classLoadViewController:UIViewController{overridefuncviewDidLoad(){super.viewDidLoad()print("init")}overridefuncviewDidAppear(_animated:Bool){super.viewDidAppear(animated)letstoryBoard:UIStoryboard=UIStoryboard(name:"Main",bun

ios - ViewController 中的 SQLite 错误 14

importGRDBclassMyView:UIViewController{overridefuncviewDidLoad(){super.viewDidLoad()do{letdbPool=tryDatabasePool(path:"/path/to/database.sqlite")}catchleterror{print(error)}}}错误是打印SQLite错误14什么是SQLite错误14?先用GRDB再先调用SqlLite为什么会引发错误?iOS11.0Swift4.0Grdb2.10.0构建到Iphone8模拟器 最佳答案

ios - 通过 Segue 将数据传递给新的 ViewController

我正在尝试通过segue传递一串数据。JSON数据已使用JSONDecoder解析并正确显示在控制台中。一切正常,除了当我尝试将数据传递给详细信息ViewController时,我要么没有收到任何数据,要么收到错误。我正在使用prepareForSegue来传递数据。这是ViewController的代码:varnowPlaying=[Results]()varsearchTitle=[Results]()structNowPlaying:Codable{letresults:[Results]}structResults:Codable{lettitle:Stringletposte

ios - 为 UIWebkit 赋值并更改实例化 ViewController [Swift 4]

我的第一个ViewController中有一个tableView。它的功能之一就是这个functableView(_tableView:UITableView,didSelectRowAtindexPath:IndexPath){print("Row\(indexPath.row)selected")letmainStoryboard:UIStoryboard=UIStoryboard(name:"Main",bundle:nil)letwebViewController=mainStoryboard.instantiateViewController(withIdentifier:"