これまでのところ、私はあなたが以下の画像で見ることができます左のバーボタンアイテムを達成しようとされています:場所写真
私はスタイルでコーディングしていませんプロファイルピクチャを取得するための基本的なコードです。ここにある:私は次の関数を使用してfirebaseからの私の写真を検索しています
let user = FIRAuth.auth()?.currentUser
var profilePicture: UIImageView?
override func viewDidLoad() {
//left bar button item setup
if let profileURL = self.user?.photoURL?.absoluteString {
let profilePictureUrl = NSURL(string: profileURL)
profilePicture?.af_setImage(withURL: profilePictureUrl as! URL)
let barButton = UIBarButtonItem(image: profilePicture?.image, landscapeImagePhone: nil, style: .done, target: self, action: #selector(revealBackClicked))
self.navigationItem.leftBarButtonItem = barButton
}
}
:私は私の出力でそれを印刷して、それをテストしたとして、私は、URLを受け付けております
self.user?.photoURL?.absoluteString
。しかし、問題は私がprofilePicture変数に画像を設定するときだと思います。なぜなら、それを印刷するときにはゼロを受け取るからです。
任意の助けもいただければ幸いです!
'photoURL'はすでに' URL'です。なぜ、 'absoluteString'を取得し、' NSURL'を作成し(Swift 3では使わないでください)、 'URL'にキャストしますか?それは3つの無駄なステップです。 – rmaddy
文字列の期待される戻り値の型があるためです。 –
文字列の期待される戻り値の型は何ですか?ただします: 'let profileURL = self.user?.photoURL? {profilePicture?.af_setImage(withURL:profileURL)... '不必要なコンバージョンとキャストの必要はありません。 – rmaddy