相关疑难解决方法(0)

iOS UISearchController崩溃:应用程序试图在其自身上呈现模态视图控制器

据崩溃论说,发生了以下崩溃(很少).

应用程序试图在自身上呈现模态视图控制器.提出控制器是.

我根本无法复制这个问题.这就是我设置UISearch控制器的方法.

    self.searchController = [[UISearchController alloc] initWithSearchResultsController:nil];
    self.searchController.dimsBackgroundDuringPresentation = NO;
    self.searchController.searchBar.delegate = self;

    self.tableView.tableHeaderView = self.searchController.searchBar;
    self.definesPresentationContext = YES;
Run Code Online (Sandbox Code Playgroud)

任何帮助都表示赞赏,因为我完全没有想法.如果需要,我会发布更多代码.

objective-c ios uisearchcontroller

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

Swift 3尝试显示其视图不在窗口层次结构中

这个问题已被多次询问,但即使在尝试了大部分可能的事情后,我仍然无法找到适合我的解决方案.这是错误消息.

警告:尝试在视图不在窗口层次结构中的<0x7f8f29e17590>上显示!

注意:我没有使用任何导航控制器.

我只是模态地呈现一个视图控制器,我有一个按钮,用于linkedIn注册.但每次我点击"确认"按钮时都会出现此错误,但我无法看到新的linkedIn对话框,尽管它在其他类中工作正常.

大多数解决方案建议在viewDidAppear中处理按钮单击已经尝试过,但它不起作用.

我正在使用此代码打开linkedIn注册表单

linkedinHelper.authorizeSuccess({ [unowned self] (lsToken) -> Void in

        print("success lsToken: \(lsToken)")
        self.requestProfile()
        }, error: { [unowned self] (error) -> Void in

            print("Encounter error: \(error.localizedDescription)")
        }, cancel: { [unowned self] () -> Void in

            print("User Cancelled!")
    })
Run Code Online (Sandbox Code Playgroud)

xcode ios swift

5
推荐指数
1
解决办法
6770
查看次数

complition处理程序闭包是否始终在后台线程运行?

完成处理程序闭包在ios开发中很常见.例如dataTask(with:completionHandler:)URLSession类中.

UI引擎由主线程管理,URLSession的API调用在后台线程下运行,如果处理程序中需要UI更新,则需要将其调度到主线程.

问题1:来自ios框架的所有完成Handler闭包是否都在后台线程中运行?

问题1.1:例如,开发人员创建的所有转义闭包是否都在后台线程中运行?

问题2:我在iPhone X模拟器中看到了多达8个线程.哪一个是主线程,哪一个是ios中的后台线程?他们有不同的优先级和计算能力吗?

multithreading closures ios swift

5
推荐指数
1
解决办法
512
查看次数