Facebook配置文件照片在重新加载视图

时间:2016-08-01 16:52:31

标签: ios swift uiimageview fbsdk

我正在抓取用户正在制作的应用的Facebook个人资料照片,并将其加载到他们名字上方的设置页面上。当我加载照片时,我使用此代码:

func getProfilePic(){
    let params: [NSObject : AnyObject] = ["redirect": false, "height": 400, "width": 400, "type": "small"]
    let pictureRequest = FBSDKGraphRequest(graphPath: "me/picture", parameters: params, HTTPMethod: "GET")
    pictureRequest.startWithCompletionHandler({
        (connection, result, error: NSError!) -> Void in
        if error == nil {
            print("\(result)")


            let dictionary = result as? NSDictionary
            let data = dictionary?.objectForKey("data")
            let urlPic = (data?.objectForKey("url"))! as! String
            print(urlPic)

            let url = NSURL(string: urlPic)
            let data2 = NSData(contentsOfURL:url!)
            if data2 != nil {
                self.photo = UIImage(data:data2!)!
            }
        } else {
            print("\(error)")
        }
    })
}

第一次在Simulator中加载视图时效果很好。但是,如果我导航到我的菜单,它使用下面的代码,然后导航回来,照片已从其UIImage视图中消失。

导航到叠加菜单:

@IBAction func navToMenu(sender: AnyObject) {
        let vc = self.storyboard!.instantiateViewControllerWithIdentifier("userMainMenu")
        vc.view.backgroundColor = UIColor(red: 240/255, green: 112/255, blue: 49/255, alpha: 0.9)
        vc.modalPresentationStyle = UIModalPresentationStyle.OverFullScreen
        vc.modalTransitionStyle = UIModalTransitionStyle.CrossDissolve
        self.presentViewController(vc, animated: true, completion: nil)
}

从重叠菜单导航回设置视图:

@IBAction func navToSettings(sender: AnyObject) {
    self.performSegueWithIdentifier("navToUserSettings", sender: self)
}

最后一次澄清:

加载视图 - >图片出现 - >激活覆盖菜单视图,关闭覆盖菜单视图 - >图片已消失

有没有人遇到类似的问题,或者解决了我在项目中遇到的问题?

0 个答案:

没有答案