小编Den*_*nov的帖子

如何在UIActivityViewController调用然后关闭后执行操作

我无法理解UIActivityViewController调用后如何执行操作.例如,当我使用以下代码保存图像时:

let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
let activity = UIActivityViewController(activityItems: [image], applicationActivities: nil)
presentViewController(activity, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

用户收到新窗口,可以在某处保存图像.成功保存图像后,我想执行一些操作(例如跳转到根视图控制器).但我无法弄清楚如何追踪这UIActivityViewController是关闭的.如果我在这个块之后编写代码,没有任何反应,正如我所理解的那样,因为这个代码是在活动VC中实现的,而不是在原始VC中实现的.

我认为这viewWillDisappear对我有帮助,但是它跟踪了原来的VC,我称之为活动VC,我无法弄清楚如何跟踪活动VC.与此同时,即使我有能力追踪此事件,仍然存在一个问题:除了取消之外,我怎么能有所不同?

ios uiactivityviewcontroller swift

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

Facebook SDK在Swift with Parse中为用户first_name,last_name,email和用户名返回nil

我正在用Parse和Facebook SDK编写应用程序.我已经成功实现了Parse登录和Facebook登录,现在从Facebook检索数据时遇到了一些麻烦.我使用以下代码来获取数据:

let request = FBSDKGraphRequest(graphPath:"me", parameters:nil)
request.startWithCompletionHandler {
   (connection, result, error) in
   if error != nil {
      print (error)
   } else if let userData = result as? NSDictionary {
      print (userData["name"] as? String)
      print (userData["first_name"] as? String)
      print (userData["last_name"] as? String)
      print (userData["email"] as? String)
      print (userData["username"] as? String)
   }
}  
Run Code Online (Sandbox Code Playgroud)

结果我得到了这个:

Optional("Name Surname")
nil
nil
nil
nil  
Run Code Online (Sandbox Code Playgroud)

第一个字符串表示数据已成功接收且全名不为空,但所有剩余字符串均为空.同时我检查了我的Facebook个人资料,我在设置中有单独的姓名和姓氏,我的电子邮件已经过验证.对于我设置的读取权限["public_profile", "email"].这里有什么问题,为什么我对所有这些字符串都没有?

facebook facebook-graph-api ios parse-platform

3
推荐指数
1
解决办法
2901
查看次数