草庐IT

viewController

全部标签

ios - viewDidAppear 被称为 strangley

我有一个包含segmentedControl的viewController。我有一个VCA和VCB,它们位于segmentedControl中。当我点击第二段VCB时出现。现在我正在从VCB推送另一个ViewController。但是当从那个viewController返回时,VCA的viewDidAppear被调用。这对我来说很奇怪。因为用户在VCB上,所以为什么要调用VCA的viewWillAppear和viewDidAppear?这里有一张图来解释更多这就是我将viewController添加到segmentedControl的方式funcswitchToViewControll

ios - ViewController 的释放

我对iOS的内存泄漏和性能问题感到非常兴奋。目前我已经了解到通过保留循环避免泄漏来防止泄漏。我在下面有一个片段,其中包含两个ViewController,我正在通过委托(delegate)传递数据。但是当我将delegatevar等化为nil时,viewcontroller的deinit没有被调用。importUIKitclassViewController:UIViewController,Navigator{funcpassData(data:String){print("Passeddata:"+data)}overridefuncviewDidLoad(){super.view

ios - 在 2 个 ViewController 之间传递数据

这个问题在这里已经有了答案:Whatdoes"Fatalerror:UnexpectedlyfoundnilwhileunwrappinganOptionalvalue"mean?(16个答案)关闭5年前。我正在尝试将数据从我的第一个ViewController发送到我的第二个。使用简单的Int可以正常工作,但是使用Double就不行,我不明白为什么。因此,如果您能解释为什么它不起作用,那就太棒了!我在第一个ViewController中的声明:vartime:Double?=0.00然后我尝试将它发送到我的另一个ViewController:letvc=segue.destinati

ios - 未调用 cellForRowAt 但正在调用 numberOfSection 和 numberOfRowsInSection

我的代码://AddingDestinationVCassubviewinmycurrentview'sviewcontainerletstoryboard=UIStoryboard(name:"Main",bundle:nil)letviewController=storyboard.instantiateViewController(withIdentifier:"DestinationViewControllerID")containerView.addSubview(viewController.view)viewController.didMove(toParentViewC

ios - 为显示的 ViewController 设置约束

我正在将ViewController推到我当前的ViewController之上。我想推送的ViewController是一个WebView,但我想这无关紧要。我不希望呈现的ViewController位于状态栏下方。但是我该如何设置这些约束呢?这是我加载推送的ViewController的代码:@objcfuncloadWebView(sender:UIButton){letvc=WebViewVC()webViewVC=vcself.present(webViewVC!,animated:true,completion:nil)}如果我为webViewVC.view设置与父View

swift - 如何快速将 UITableViewCell 数据发送到另一个 ViewController?

我正在尝试将一条消息从messageArray发送到另一个UIViewController以便我可以加载消息的评论。单击单元格时如何发送消息数据结构?functableView(_tableView:UITableView,cellForRowAtindexPath:IndexPath)->UITableViewCell{guardletcell=tableView.dequeueReusableCell(withIdentifier:"messageCell")as?feedMessagesCellelse{returnUITableViewCell()}letmessage=mes

uiviewcontroller - 在自定义单元格中点击 UIButton 后显示新的 ViewController

嘿嘿!我想显示一个带有Action的ViewController(自定义单元格中UIButton的tappedInside)。在这种情况下,我不能仅通过控制从自定义单元格中的UIButton拖动到NavigationController(嵌入了ViewController)。我如何才能意识到tableview一行中按钮(在自定义单元格中)上的“tappedInside”会显示一个新的ViewController?谢谢! 最佳答案 您可以在单击具有委托(delegate)的单元格时触发:functableView(tableView:

ios - ViewController 作为 Swift 中 MapView 的叠加层(如 Google map 应用程序用户界面)

我正在使用Swift构建一个小型应用程序,我想在其中实现以下目标:-带有多个注释的MapView-单击其中一个注释会在从底部移入的叠加层中显示一些细节,并填充大约。屏幕的一半-显示屏的上半部分仍然显示MapView。单击map关闭详细信息现在我已经阅读了很多关于不同可能性的资料。首先,我尝试将ContainerView与这样的东西一起使用:@IBOutletweakvardetailsContainerYPosition:NSLayoutConstraint!funcmapView(mapView:MKMapView!,didSelectAnnotationViewview:MKAnn

swift - 调用无参数函数时需要参数 swift

我使用DuncanC的帖子编写了该函数。我输入的不是参数,但在调用函数时Xcode需要一个ViewController参数。我该如何解决这个问题?编辑:我添加了其余代码。是什么破坏了assign()函数?调用:importUIKitclassViewController:UIViewController,UITextFieldDelegate{@IBOutletweakvartextBox:UITextView!@IBOutletweakvarfirstInput:UITextField!@IBOutletweakvarresultLabel:UILabel!overridefuncv

ios - 在 View 可见之前执行 Segue

我有两种看法ViewController->MainviewLoginVC->LogInView我的初始View是包含按钮和一些文本的ViewController。我想要实现的目标如果用户尚未登录,则执行将View转移到登录的segue。我做了什么在我的ViewController中,我检查了USER_ID是否为nil,如果为nil,那么我将执行segue。overridefuncviewWillAppear(animated:Bool){ifGlobals.USER_ID==nil{self.performSegueWithIdentifier("goto_login",sender