标签: uistoryboardsegue

如何在Swift上的两个子视图控制器之间切换?

我试图View Controllers在一个特定的两个孩子之间切换Container View.我有一个Navigation Controller菜单(Table View用于制作菜单的不同选项).

每次我点击菜单的一个选项,我想改变的孩子Container View,但我得到上面的孩子Navigation barTable View(未示出它们,但它们是新的子视图控制器下).

我的Main.storyboard的方案是这样的:

Navigation Controller --> View Controller (With 2 Container View, 1 for Table View
                                           and the other to set master View Controller)
                                         |
                                         |
                               ------------------------
                               |                      |
                          View Controller        Table View
                            (id: master)

                   View Controller (id: Home)   View Controller (id: screen2)
Run Code Online (Sandbox Code Playgroud)

我在tableView函数上有以下代码(我在其中检测单击菜单的选项时)来更改容器视图的子视图控制器:

let currentController = self.navigationController?.visibleViewController //container

var oldChild = (currentController?.childViewControllers.last!)! as UIViewController //master
let …
Run Code Online (Sandbox Code Playgroud)

uinavigationcontroller ios uistoryboardsegue uicontainerview swift

9
推荐指数
1
解决办法
4707
查看次数

iOS - UIStoryboardSegue检测表格单元格并打开viewController?

所以我有一个UITableView,并且单元格连接到UIStoryboardSegue以便打开一个新的UIViewController.单击一个单元格后,prepareForSegue调用一切正常.

问题:在下面的方法中,我怎么知道TableView中所选单元格的indexPath是什么?

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    ObjectDetailViewController *mvc = [segue destinationViewController];
    // PassingObject *obj = [self.array objectAtIndex: ? ];
    mvc.passingObject = obj;
}
Run Code Online (Sandbox Code Playgroud)

storyboard uitableview ios uistoryboardsegue

8
推荐指数
2
解决办法
7068
查看次数

iOS 6故事板:模态视图不是解雇

我正在使用Xcode 4.5和iOS 6.

我正在构建一个使用故事板的通用应用程序.我有一个视图控制器,在导航栏中有一个按钮.当点击按钮时,我使用segue将另一个视图控制器呈现为模态.模态视图控制器的导航栏中有"取消"和"保存"按钮.在故事板中,模态按钮项链接到新的Exit操作上的操作,该操作应该解开到父视图控制器,关闭模态,并调用操作处理程序.

这在iPhone上工作正常,但我在iPad上看到了问题.在iPad上,当模式以全屏显示时,一切正常.当我将模式更改为页面表或表单(这是我的情况下所需的行为)时,将调用操作处理程序,但模式视图控制器不会自动被解除.

有没有人见过这种行为?你有没有做过修复它的事情?

谢谢.

uistoryboard xcode-storyboard uistoryboardsegue ios6

8
推荐指数
1
解决办法
3001
查看次数

故事板会导致内存泄漏

我有两个UIViewControllers,按钮互相触发segue(模态).我想发现这是否会在来回跳跃时导致任何内存泄漏,我发现Living Object &&分配的内存正在上升,最终将导致应用程序崩溃.我没有任何单行代码 - 使用纯UIViewControllers. 故事板

剖析器1

探查者2 项目的设置

我可能做错了什么?
我可以在项目设置中设置错误吗?
我是否正在阅读探查者的统计数据?
使用segues时是否需要发出任何特殊的释放命令?

cocoa-touch uiviewcontroller ios uistoryboard uistoryboardsegue

8
推荐指数
1
解决办法
4645
查看次数

如何检查使用了哪个segue

我有两个segue's导致相同viewController.有2个按钮viewController使用2个segue 连接到同一个按钮.在那viewController我需要检查点击了哪个按钮.所以实际上我需要检查使用/预制的segue.我如何在viewControllers类中检查这个?我知道有prepareForSegue方法,但是我不能将它用于我的目的,因为我需要把它放在prepareForSegue2个按钮所在的类中,我不希望它在那里,但我想在viewControllers课堂上因为我需要访问它并在该类中设置一些变量.

iphone objective-c ios uistoryboardsegue

8
推荐指数
1
解决办法
6824
查看次数

制作按钮UIAlertView执行Segue

我创建了UIAlertView一个动作,它给了我两个选项.我希望用户能够点击按钮并让它执行Segue.

这是我到目前为止的代码:

- (IBAction)switchView:(id)sender
{
    UIAlertView *myAlert = [[UIAlertView alloc]
                            initWithTitle:@"Please Note"
                            message:@"Hello this is my message"
                            delegate:self
                            cancelButtonTitle:@"OK"
                            otherButtonTitles:@"Option 1", @"Option 2", nil];
    [myAlert show];
}

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
    NSString *buttonTitle = [alertView buttonTitleAtIndex:buttonIndex];

    if ([buttonTitle isEqualToString:@"Option 1"]) {



    }
}
Run Code Online (Sandbox Code Playgroud)

uialertview ios uistoryboard segue uistoryboardsegue

8
推荐指数
2
解决办法
5929
查看次数

如何在prepareForSegue期间在目标视图控制器上设置标题:

我想简单地在我的目标视图控制器上设置标题,以便它在prepareForSegue:方法的导航控制器的导航栏中显示,但是设置它的标题或navigationItem如下:

[segue.destinationViewController setTitle:@"doesn't work"]; [segue.destinationViewController.navigationItem setTitle:@"this either"];

不起作用可能是因为目标的视图控制器的视图尚未加载.我可以不创建自定义目标视图控制器吗?

ios uistoryboard uistoryboardsegue

8
推荐指数
1
解决办法
8789
查看次数

台风:装配和故事板创建的ViewControllers

如何将Typhoon与iOS故事板一起使用,其中视图控制器由系统隐式生成?我是否必须在prepareForSegue方法中做一些特别的事情?

objective-c ios uistoryboardsegue typhoon

8
推荐指数
2
解决办法
3083
查看次数

如何使SWRevealViewController滑过主视图控制器而不是"推"出来?

我正在使用swift的SWRevealController,它正在考虑如何,但我想稍微调整一下.

当您拿出菜单时,通过滑动或按下按钮,在将主视图控制器推到一侧时会出现新视图.

我想要做的是滑过主视图控制器,以便主视图控制器保持原位,新的视图控制器滑过它顶部.

那有意义吗?我能想到的唯一例子是针对Android 的Reddit新闻应用程序.滑出菜单不会影响主视图控制器,它只是在它上面滑出.(我知道它在Android中有所不同)

使用SWRevealViewController类时可以这样做吗?

ios uistoryboardsegue swrevealviewcontroller swift

8
推荐指数
1
解决办法
818
查看次数

第一次点击按钮时不播放segue的自定义动画

我遇到了一个不寻常的行为,我被卡住了一点,问题如下.

我正在使用BWWalkthrough库,以便将4张幻灯片作为启动画面.所以在我的appdelegate中,我有以下代码初始化viewcontrollers:

let storyboard = UIStoryboard(name: "SlidesFlow", bundle: nil)

let walkthrough = storyboard.instantiateViewController(withIdentifier: "SlidesView") as! BWWalkthroughViewController
let page_zero = storyboard.instantiateViewController(withIdentifier: "page_1")
let page_one = storyboard.instantiateViewController(withIdentifier: "page_2")
let page_two = storyboard.instantiateViewController(withIdentifier: "page_3")
let page_three = storyboard.instantiateViewController(withIdentifier: "page_4")

walkthrough.delegate = self
walkthrough.addViewController(page_zero)
walkthrough.addViewController(page_one)
walkthrough.addViewController(page_two)
walkthrough.addViewController(page_three)
Run Code Online (Sandbox Code Playgroud)

一切都按预期工作,所以这里没问题.在viewController page_three上我有一个按钮,使用自定义segue动画将我重定向到另一个视图控制器

class sentSegueFromRight: UIStoryboardSegue {

override func perform()
{
    let src = self.source as UIViewController
    let dst = self.destination as UIViewController

    src.view.superview?.insertSubview(dst.view, aboveSubview: src.view)
    dst.view.transform = CGAffineTransform(translationX: src.view.frame.size.width, y: 0)

    UIView.animate(withDuration: 0.25,
                               delay: 0.0,
                               options: UIViewAnimationOptions.curveEaseInOut, …
Run Code Online (Sandbox Code Playgroud)

ios segue uistoryboardsegue swift3 xcode8

8
推荐指数
1
解决办法
112
查看次数