小编Sae*_*iry的帖子

swift 中 DispatchQueue 类型之间的区别

据我了解,swift中有 3 种类型的 DispatchQueue:

  • 主(串行) (主线程)
  • 全局(并发) (后台线程并行工作)
  • 自定义(并发或串行)

每一个都可能工作(异步或同步)

第一个问题:

主队列是否UI 线程上工作而不在另一个线程上工作?如果答案是肯定的,如何DispatchQueue.Main.async不阻塞 UI 线程。如果答案为 No ,那么DispatchQueue.global只要DispatchQueue.Main.async在另一个线程中工作,使用有什么好处。

第二个问题:

DispatchQueue.global (async)DispatchQueue.global (sync)之间的区别是什么,只要这个队列并发工作 ,在哪里使用每个队列?

第三个问题:

什么是差异

  1. (串行和同步)
  2. (并发和异步)

multithreading asynchronous grand-central-dispatch swift dispatch-queue

6
推荐指数
1
解决办法
4642
查看次数

在快速启动屏幕期间使用网络服务

我是 ios swift 的新手,

如何在闪屏期间从网络服务获取数据,

换句话说,我想让闪屏仍然出现,直到应用程序完成获取数据。

我尝试将 NSURLConnection.sendAsynchronousRequest函数放入 appdelegate 但启动画面不等待 sendAsynchronousRequest 完成

splash-screen nsurlconnection sendasynchronousrequest swift ios8

2
推荐指数
1
解决办法
5220
查看次数

为什么没有调用 searchBarTextDidEndEditing ?

我有这个代码:

extension VC : UISearchBarDelegate
{
    func searchBarTextDidEndEditing(_ searchBar: UISearchBar) {
        print("searchBarTextDidEndEditing")
    }

    func searchBarCancelButtonClicked(_ searchBar: UISearchBar) {
        // searchBar.resignFirstResponder()
    }
}
Run Code Online (Sandbox Code Playgroud)

searchBarCancelButtonClicked单击搜索时已触发,但searchBarTextDidEndEditing直到我打电话才触发 searchBar.resignFirstResponder()

我读了很多关于此的问题和答案,但我不明白为什么会发生这种情况,以及resignFirstResponder()这里做什么?

cocoa-touch uisearchbardelegate ios swift

0
推荐指数
1
解决办法
1417
查看次数