質問編集履歴

1 ViewController.swiftを書き直しました。

sensho

sensho score 5

2015/04/26 21:24  投稿

XcodeでiOSアプリにURLから取ってきた画像を表示させるのができません。
```lang-swift
import UIKit
class ViewController: UIViewController {
   
   @IBOutlet var leftImageView: UIImageView!
   @IBOutlet var myImageView: UIImageView!
   override func viewDidLoad() {
       super.viewDidLoad()
       
       let url = NSURL(string: "http://eoimages.gsfc.nasa.gov/images/imagerecords/57000/57723/globe_east_540.jpg")
       var err: NSError?
       var imageData :NSData = NSData(contentsOfURL: url!, options: NSDataReadingOptions.DataReadingMappedIfSafe, error: &err)!
       let myImage = UIImage(data: imageData)
       leftImageView.image = myImage
       self.view.addSubview(leftImageView)
       
       if let imageData = NSData(contentsOfURL: url!, options: NSDataReadingOptions.DataReadingMappedIfSafe, error: nil) {
       
           let myImage = UIImage(data: imageData)
           
           myImageView.frame = CGRectMake(0, 0, 360, 240)
           
           myImageView.image = myImage
       } else {
       
           println("画像取得失敗")
       }
   }
   override func didReceiveMemoryWarning() {
       super.didReceiveMemoryWarning()
       // Dispose of any resources that can be recreated.
   }
}
```
上のコードでURLの画像を表示しようとしたのですが、実行したら```lang-swift
var imageData :NSData = NSData(contentsOfURL: url!, options: NSDataReadingOptions.DataReadingMappedIfSafe, error: &err)!
```
の部分にEXC_BAD_INSTRUCTIONと出てunexpectedly found nil while unwrapping an Optional valueとエラーになってしまいました。どうすればよいのでしょうか。
上のコードでURLの画像を表示しようとしたのですが、実行しても何も表示されずに println("画像取得失敗") が実行されます。ネットワークに問題があるかも知れないと思うのですが、初心者で解決方法がまったくわかりません。アドバイスよろしくお願いします。
  • Xcode

    6097 questions

    Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

  • iPhone

    1316 questions

    iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る