bugfix> ios > 投稿

「プロフィール」セルにユーザーの画像を表示したい。 そのために、プロファイルの負荷を解決するのと同じスニペットを使用することにしました。

まず、 UIImageView! を宣言しました変数:

var accountimage: UIImageView!

その後、私の cellForRowAtIndexPathUserDefaults でダウンロードしたアバターのコンストラクタ:

if indexPath.row == 1 {
    cell.backgroundColor? = UIColor(red: 236/255,green: 239/255,blue: 240/255,alpha: 1)
    let myFont: UIFont? = UIFont(name: "Avenir Next Condensed", size: 22.0)
    if let aFont = myFont {
        cell.textLabel?.font = aFont
        //load account image
        if UserDefaults.standard.object(forKey: "profile_avatar") != nil{
            let decoded  = UserDefaults.standard.object(forKey: "profile_avatar") as! Data
            let decodedTeams = NSKeyedUnarchiver.unarchiveObject(with: decoded)
            accountimage.image = decodedTeams as? UIImage
            cell.imageView?.image = accountimage.image
        } else
        {
            accountimage.image = #imageLiteral(resourceName: "user.png")
            cell.imageView?.image = accountimage.image
        }
}
}

デバッガーは accountimage.image = decodedTeams as? UIImage でこれを言うライン:

Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value


編集

ここに私の Main.Storyboard の画面役立つ場合:

回答 1 件
  • たぶん、あなたはこのコードで小さな間違いを犯した let decoded = UserDefaults.standard.object(forKey: "profile_avatar") as! Data ** as!**は強制変換を意味しますが、失敗する可能性があります。

あなたの答え