问题标签 [completion-block]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
461 浏览

ios - 完成块线程

我有这段代码:

我不明白一件事:当block被解雇时,secondary thread仍在运行。应该自动执行completiona不是更正确吗?blockmain thread

我知道我做错了什么,我需要一些解释。

0 投票
1 回答
520 浏览

ios - 带有完成块和属性的自定义 segue 转换

我想在视图控制器之间进行自定义转换,从左到右滑动,就像 AppLaucher 中的页面之间的 iOS 基本转换效果一样,但会变暗。

我在 viewControllers 之间有一个自定义 segue(我们称它们为 FirstVC 和 SecondVC)。对于变暗,我有一个在动画过程中淡入的黑色视图(SecondVC 比 FirstVC 暗)。我有一个类 - UIStoryboardSegue 的子类 - 用于我的自定义 segue,并-(void)perform实现了该方法。在这种方法中,我已经实现了(更多细节):

我确切地说这两个视图控制器位于两个不同的导航视图控制器中。

对于变暗,我想在转换完成时修改SecondVC类中声明的“darkView”属性,以存储转换后的变暗。

为此,我想做以下选项之一(如果其中一个工作我不需要其他选项):

  1. 在完成块中直接访问SecondVC的darkView属性并修改

  2. 检测动画何时完成并在该点修改属性,在 SecondVC 类中实现的方法中

  3. 写入[dest.view addSubview:whiteView];完成块(“dest”是目标视图控制器),并在 SecondVC 的另一种方法中访问这个子视图

我已经为这三种解决方案尝试了很多东西,但我非常感谢你的帮助。谢谢

0 投票
0 回答
254 浏览

ios - iOS 等待 pdf 生成并附加到电子邮件

我正在从 html 生成 pdf 并附加到电子邮件。我遇到的问题是 pdf 在完成生成之前附加到电子邮件中。我尝试使用完成块但没有成功。

0 投票
0 回答
225 浏览

ios - 在声明的方法之外更新完成处理程序

我一直在尝试各种解决方案来获取handlerfrommethodTwo和的更新值methodThree。代码以 开头methodOne(),然后是methodTwo()。如何解决这个难题?

这些方法在静态库中声明。它的参考实现,即一个 SampleApp.xcodeproj 正在调用methodOne(),它在静态库的头文件中公开。

我查看了KVONSNotificationCenter,但似乎方向不正确。

更新

我想使用完成处理程序,因为那不起作用。我必须通过使用委托作为消息传递协议来解决这个问题。

0 投票
1 回答
3690 浏览

ios - 未调用ios 8完成块

在我的应用程序中,我使用 TTOpenInAppActivity 在 UIActivityController 中插入“打开”操作。它里面的工作原理是这样的:

一些视图控制器显示 UIActivityController 已经内置了 TTOpenInActivity。

当用户点击“打开方式”按钮时,会触发以下方法:

由于该应用程序仅适用于 iPhone,因此应执行以下代码:

在 iOS7 中一切正常。在 iOS8 UIActivityController 被解雇,然后什么也没有发生。在调试时,我确实设法检测到 iOS8 中的完成处理程序永远不会被调用。

请帮助我找出这种行为的原因并使其正常工作。

先感谢您。

0 投票
3 回答
5100 浏览

ios - 在 Alamofire Post 请求之后如何有一个完成处理程序/块?

我有一个处理Apple Push Notification Service远程通知的方法。执行此方法时,我希望它调用我的服务器并使用库执行HTTP POST请求。Alamofire我想执行另一种方法来处理 POST 请求的响应。

对我来说,问题是我API在这个 POST 请求中使用现有的从服务器获取配置文件。所以我需要使用这个现有的 API 并确定何时从远程通知专门触发了此配置文件获取。

由于Alamofire请求是在后台队列中完成的,在从服务器接收到配置文件后,我将如何执行方法?

什么是解决这个问题的好选择?

谢谢!

0 投票
1 回答
4630 浏览

swift - 返回完成块内方法的对象

我想创建一个带有 URL 参数的方法,该方法返回调用该 URL 的响应。如何返回在方法的完成块内获得的数据?

0 投票
1 回答
4464 浏览

ios - 如何为方法编写和传递完成块参数?

我有一个基本上使用这个的方法:

我不知道该怎么做是编写/打包一个参数,以便我可以编写我想要执行的代码,然后像我一样将它简单地传递给方法time

任何帮助表示赞赏。谢谢

0 投票
2 回答
10291 浏览

swift - Swift presentViewController 完成块仅在调试中工作而不在发布中调用

我在调试和发布中的完成块有一个奇怪的行为。例如:

在调试中: println("save bolean") 打印字符串 在 relase 中: println("save bolean") 不打印

关于这种行为的任何想法?有人尝试一个明确的解决方案?

善良的安德里亚

0 投票
2 回答
437 浏览

swift - 如何在 Swift 中抑制具有 Void 返回类型的闭包的隐式返回

让我们考虑一下我们有一个像这样的闭包:(用作completionHandler)

现在,如果我们想做这样的事情:

它在 // 1 行返回并忽略其余行,因为 of 的返回setValue类型NSDictionaryVoid。我的问题是,有没有办法抑制这种行为?