相关疑难解决方法(0)

UINavigationController交互式流行手势不起作用?

所以我在iOS 7应用程序中构建了一个导航控制器.titleView是可见的,以及它自己的后退按钮和导航栏.出于某种原因,交互式弹出手势(从左边缘轻扫)不起作用.什么都没发生.当我记录手势时,它不是零.为了启用此功能,我有什么特别的事吗?什么可能导致它不起作用?

gesture uinavigationcontroller ios ios7

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

iOS App冻结在PushViewController上

我的导航控制器间歇性地在推动时冻结.它似乎将新的视图控制器添加到堆栈中,但动画永远不会发生.我还有两个其他容器在屏幕上保存视图控制器,我可以在导航控制器冻结后很好地与它们进行交互.真正有趣的是,如果我尝试将另一个视图控制器推到导航控制器的堆栈上,我注意到堆栈顶部有一个额外的视图控制器(我最初推动的视图控制器冻结了导航控制器).所以,如果我在主屏幕上(我们将其称为VC-Home)并尝试推送新视图(VC-1)并冻结,那么我尝试推送新视图(VC-2),这是我在推送之前在当前堆栈中看到的内容:

{ [VC-Home, VC-1] }

并且在调用pushViewController之后,它保持不变; VC-2未添加到堆栈中.

据我所知,导航控制器通过在动画开始之前使前一个视图控制器处于非活动状态来启动动画,但随后动画永远不会发生,导航控制器处于冻结状态.

我正在通过调用从故事板创建新的视图控制器, UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("ViewController")所以我认为那里没有任何问题.我也没有在导航栏上覆盖pushViewController.关于我的应用程序的一些独特的东西是,它是非常高解析度图像重(使用SDWebImage来管理),我总是在屏幕上有三个容器在一次(一个导航控制器,用于搜索一个视图控制器,以及一个互动排水沟/侧面/滑出菜单).

CPU使用率低且内存使用率正常(发生冻结时设备稳定在60-70MB左右).

是否有任何想法可能导致这个或任何调试技巧可以帮助我发现真正的问题?

更新

UINavigationController没有唯一的代码,因为我只是推动使用pushViewController().这是调用它的代码:

func didSelectItem(profile: SimpleProfile) {
     let vc = UIStoryboard.profileViewController()
     vc.profile = profile
     navigationController?.pushViewController(vc, animated: true)
}
Run Code Online (Sandbox Code Playgroud)

我推送的ViewController在viewDidLoad中有以下代码:

override func viewDidLoad() {
    super.viewDidLoad()
    button.roundView()

    if let type = profile?.profileType {
        //load multiple view controllers into a view pager based on type 
        let viewControllers = ProfileTypeTabAdapter.produceViewControllersBasedOnType(type)
        loadViewPagerViews(viewControllers)

        let topInset = headerView.bounds.height + tabScrollView.contentSize.height
        if let viewPager = viewPager {
            for view in viewPager.views {
                if …
Run Code Online (Sandbox Code Playgroud)

uinavigationcontroller ios sdwebimage swift

23
推荐指数
2
解决办法
5492
查看次数

UINavigationController后退按钮没有动画

我对导航控制器的后退按钮动画有一个奇怪的问题:

我的应用程序有一个带有3个选项卡的标签栏控件,其中一个带有两个后续视图控制器的导航控制器,第一个只显示一个主表,第二个显示详细信息,当我从详细信息中点击后退按钮时出现问题视图控制器,而不是滑回主视图控制器,它只是弹出视图而不动画.

我注意到,如果我先转到另一个标签,然后再返回到此标签,动画将正常触发.

我从头开始重建整个应用程序导航,但问题仍然存在,任何帮助都表示赞赏.

提前致谢!.

编辑:添加了更多信息

这就是我的故事板在该特定分支中的样子: 在此输入图像描述

这是来自"Partidos Activos"视图控制器的prepareForSegue:

#pragma mark - Segues

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if ([segue.identifier isEqualToString:@"PartidosEnDia"]) {
        PartidosActivosEnFecha *paf = segue.destinationViewController;
        CalendarCell *senderCell = (CalendarCell *)sender;
        paf.datos = senderCell.dataDic;
    }
}
Run Code Online (Sandbox Code Playgroud)

两个viewController viewDidLoad方法都在方法的开头调用super.

正如我之前所说,如果我只是点击其他选项卡然后再回到这一个,那么来自"Partidos Activos En Fecha"viewController的幻灯片动画按预期工作,只有当我启动应用程序并直接转到此viewController时回滚动画不起作用,它只是在没有动画的情况下进入调用者viewController.

希望我添加足够的信息,如果不是只是告诉我,我会再次添加它.

uinavigationcontroller ios

7
推荐指数
3
解决办法
2144
查看次数

标签 统计

ios ×3

uinavigationcontroller ×3

gesture ×1

ios7 ×1

sdwebimage ×1

swift ×1