質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Xcode

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

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

1回答

697閲覧

UIImageViewの画像の回転/拡縮/反転

hello141551

総合スコア5

Xcode

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

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2020/01/26 15:40

import UIKit

class ViewController: UIViewController {

override func viewDidLoad() { super.viewDidLoad() //画像の設定 let myImage: UIImage = UIImage(named: "sample.jpg")! //画像の縮小 let myScaleDownView: UIImageView = UIImageView(frame: CGRect(x: 100, y: 30, width:80, height:80)) //UIImageViewに画像を設定 myScaleDownView.image = myImage //縮小用(0.5倍)のアファイン行列の生成 myScaleDownView.transform = CGAffineTransform(scaleX: 0.5, y: 0.5) //Viewに追加 self.view.addSubview(myScaleDownView) //画像の拡大 let myScaleUpView: UIImageView = UIImageView(frame: CGRect(x: 100, y: 120, width: 80,height: 80)) //UIImageViewに画像の設定 myScaleUpView.image = myImage //縮小用(0.5倍)のアファイン行列の生成 myScaleDownView.transform = CGAffineTransform(scaleX: 1.5, y: 1.5) //Viewに追加 self.view.addSubview(myScaleUpView) //画像の回転 let myRotateView:UIImageView = UIImageView(frame: CGRect(x: 100, y: 250, width: 80, height: 80)) //UIImageViewの画像の設定 myRotateView.image = myImage //radianで回転角度を指定(30度)する let angle:CGFloat = CGFloat((30.0 * M_PI) / 180.0) //回転用のアファイン行列を生成 myRotateView.transform = CGAffineTransform(rotationAngle: angle) //Viewに張り付け self.view.addSubview(myRotateView) //画像の反転 let myReverseView: UIImageView = UIImageView(frame: CGRect(x: 100, y: 360, width: 80, height: 80)) //画像の設定 myReverseView.image = myImage //縮小用(0.5倍)のアフィン行列の生成 myReverseView.transform = myReverseView.transform.scaledBy(x: -1.0, y: 1.0) //Viewに追加 self.view.addSubview(myReverseView) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() }

}

このコードで「画像設定」のところで
『Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value』
といったエラーが出るのはどうしてでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takabosoft

2020/01/27 00:28

コードは ```swift (ここにコード) ``` のように記述してください。整形されます。質問欄は再編集できます。
hello141551

2020/02/14 03:35

ありがとうございます!
guest

回答1

0

UIImage(named: "sample.jpg")!

これはsample.jpgの読み込みに失敗するとそのようなエラーになります。
sample.jpgはどうやって組み込んだのでしょうか?
(組み込んでいないのでしたら組み込んでください。)

プロジェクトにファイルのママ突っ込んでいる場合は、上記のコードのままでもいいですが、
画像を選択した状態でインスペクタのTarget Membership(?)辺りにに画像を同梱するかどうかチェックを入れる箇所があるので、そのチェックを入れ忘れると端末に画像が転送されずに、読み込みエラーになります。

参考:
https://omakai.net/archives/17769/

直ファイル置きではなく、Assets.xcassetsを使っているよ、という場合はファイル名ではなくアセット名を指定しますので、拡張子は付きません。

どちらか迷うようでしたら、Assets.xcassetsをオススメしておきます。

投稿2020/01/27 00:28

編集2020/01/27 00:43
takabosoft

総合スコア8356

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問