Tag: segue

如何使Segueanimation水平没有UINavigationController?

我正在使用一个UISplitViewController ,与一个MasterViewController和DetailViewController ,没有UINavigationController 。 当然,Seguanimation为master-> detail,触发 performSegueWithIdentifier("showDetail", sender: self) 在从下往上显示的DetailViewController 。 我怎样才能使animation显示左侧?

当我应该使用导航控制器?

我不知道什么时候应该使用导航控制器,而不是在正常的View Controller中使用segue? 如果使用segue,Modal和Push segue有什么不同? 你可以给我一个例子吗?

迅速3准备(for segue)function坏了?

出于某种奇怪的原因,用swift 3, prepare(for segue:方法拒绝承认segue标识符,我把下面的IBAction连接到了UI上的一对button: @IBAction func goToImagesPicker(_ sender: AnyObject) { performSegue(withIdentifier: "showImagePicker", sender: sender) } @IBAction func goToNamePicker(_ sender: AnyObject) { performSegue(withIdentifier: "showNamePicker", sender: sender) } 然而,在我的prepare(for segue:方法,它不能识别不同的segue标识符,我知道,因为我的控制台不logging我分配给每个消息: func prepare(for segue: UIStoryboardSegue, sender: AnyObject?) { if segue.identifier == "showImagePicker" { print("This is the Image Picker") } if segue.identifier == "showNamePicker" { print("This is the Name […]

通过Segue传递数据(swift 2)

这是一个小费计算器项目,它必须有一个设置视图,我select默认的小费率。 我有一些传递数据的问题,当我select一个默认的提示百分比,它不会在View Controller中改变,我也想让应用程序记住closures应用程序并重新打开时的默认速率。 我真的很感激有人更正我的代码并进行testing。 这是为了进入大学的计算机科学计划,我以前没有任何编程语言的经验。 100 TipPercentageLabel.text =“(tipDisplay)%”}} override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } func setupContainer() { tipSlider.minimumValue = 0 tipSlider.maximumValue = 100 tipSlider.value = 20 tipSlider.addTarget(self, action: "sliderTipChanged:", forControlEvents: .ValueChanged) personsStepper.minimumValue = 1 personsStepper.maximumValue = 30 personsStepper.value = 1 personsStepper.addTarget(self, action: "sliderPersonChanged:", forControlEvents: .ValueChanged) amountTextField.text […]

如何通过有条件的展开顺序传递数据?

我尝试build立一个rss阅读器。 在“添加Feed”页面上,如果点击“添加”button,我希望检查Feed是否已成功添加。 如果添加了,则触发展开顺序,返回主页面。 如果没有添加,请留在当前页面。 我知道我可以在“添加”button上创build一个IBAction,并检查是否添加了Feed。 不过,为了添加Feed,我需要满足两个要求。 首先,在parsingurl之后,我需要知道parsing结果是否可以生成一个feed。 为了parsingurl,我需要使用mainViewController中定义的方法。 其次,我需要检查Feed是否已经存在。 如果此Feed已经存在,请不要添加它。 要检查这一点,我需要从mainViewController获取饲料数据。 目前我使用prepareForSegue将数据从主viewController传递到这个视图。 但是,对于有条件的展开顺序,我不知道如何传递数据并检查feed是否已经存在。 因为prepareForSegue只有在segue被触发时才被使用。 如果没有触发,我不能检查条件。 除了通过segue,还有其他的方式来传递其他视图的数据吗? 我不知道Objective-C,所以如果你能快速给我一些解决scheme会更好。 🙂

快速通过segue传递数组

我一直在挣扎几天,从我的SecondViewController传递数组到我的FirstViewController使用Swift。 从我的研究中,我发现与prepareForSegue将是一个可行的select,但我似乎无法弄清楚。 我究竟做错了什么? 在SecondViewController中,我的prepareForSegue如下所示: override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { var DVC: FirstViewController = segue.destinationViewController as! FirstViewController DVC.mySeguedArray = myIncomeArray } 我的FirstViewController看起来像这样: class FirstViewController: UIViewController { @IBOutlet weak var textView: UITextView! var myIncomeArray: [Income] = [] var mySeguedArray: [Income] = [] override func viewDidLoad() { super.viewDidLoad() myIncomeArray = mySeguedArray } 另外值得一提的是,我确信我在SecondViewController填充数组,因为在向它添加新的Income对象时,通过打印出数组的大小来testing它。 但FirstViewController的数组在检测到segue后的大小时只返回0 。 编辑:添加故事板StoryBoard的图片

双向故事板旅行不堆叠

推塞入堆栈视图控制器,同时popup'垛'他们。 Modal在堆叠视图控制器的同时解放了它们。 我正在尝试创build一个自定义的segue,以便在任何方向上以线性(平面)层次结构在VC之间移动,而不会在任何方向上堆叠。 看起来,风险投资家之间在两个方向上的分歧都可以防止解雇。 有任何想法吗?

如何使Segue Pass数据只在符合某些条件时才执行

我有一个button的login页面。 当我点击它,IF和ONLY如果login成功,我想传递数据到另一个类(使用属性)。 我曾尝试在button上使用Segue来传递数据,但问题是这个Segue总是进入下一个View,即使login失败,在这种情况下,它也不应该。 -(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if ([[segue identifier] isEqualToString:@"gotoMainPage"] ) { MainPageController *mpc = [segue destinationViewController]; mpc.username = @"TEST"; } 如果login成功,我怎么才能让Segue只进入destinationController? 我知道还有其他方法去另一个ViewController,如设置一个IBAction的button,当login成功,使用instantiateViewControllerWithIdentifier和presentViewController,我也试过这些,但这里的问题是,它不会将数据传递给另一个类。 帮助表示赞赏。 谢谢

创build一个segue并通过Swift把它连接到两个视图控制器之间?

我们如何在不使用Storyboard的情况下以编程方式快速创build一个Segue。 由于应用程序的结构,我不能使用故事板,所以我需要知道如何以编程方式进行。 基本上,我想要做的就是创build一个segue,并将其附加在源和目的地之间。 到目前为止,我已经创build了一个RollSegue类,它是UIStoryboardSegue的一个子类。 现在,我试图做到以下几点: var seg: RollSegue = UIStoryboardSegue("roll", self, destination) 我也试过: var seg: UIStoryboardSegue = UIStoryboardSegue("roll", self, destination) 这些代码行运行良好,但是当我尝试调用performSegue方法时,我得到错误: Receiver (<Home1: 0x7fc84b573fd0>) has no segue with identifier 'roll'

迅速继续不工作?

我的Swift segue根本不工作,不会抛出任何错误。 断点告诉我,应用程序着陆在这条线上,但没有任何反应: self.performSegueWithIdentifier("SignupSegue", sender: self) 代码块是Facebook的login表单: if let accessToken: FBSDKAccessToken = FBSDKAccessToken.currentAccessToken() { PFFacebookUtils.logInInBackgroundWithAccessToken(result.token, block: { (user: PFUser ? , error : NSError ? ) – > Void in if user!.isNew { self.performSegueWithIdentifier("SignupSegue", sender: self) } else { self.navigateToInGame(true) } }) } 这是它应该调用的segue函数,但是甚至没有涉及: override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { if (segue.identifier == "SignupSegue") […]