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

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

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

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

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

Swift

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

解決済

swift クイズアプリ csvファイルに画像と正解番号、5択選択肢を入れてますが、画像が表示されません

tamakuri
tamakuri

総合スコア0

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

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

Swift

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

1回答

0評価

0クリップ

384閲覧

投稿2021/08/31 07:00

前提・実現したいこと

現在swiftで5択のクイズアプリを作っています。 csvファイルから 問題画像 正解番号 選択肢 を引っ張ってきて問題画面に表示をしたいのですが、問題画像のみ表示されません。 選択肢は問題ありません。

発生している問題・エラーメッセージ

Value of type 'UIImage' has no member 'image'

swift

import UIKit class QuizViewController: UIViewController,UIScrollViewDelegate { @IBOutlet weak var quizNumberLabel: UILabel! @IBOutlet weak var quizTextView: UITextView! @IBOutlet weak var answerButton1: UIButton! @IBOutlet weak var AnswerButton2: UIButton! @IBOutlet weak var AnswerButton3: UIButton! @IBOutlet weak var AnswerButton4: UIButton! @IBOutlet weak var AnswerButton5: UIButton! @IBOutlet weak var judgeImageView: UIImageView! var csvArray: [String] = [] var quizArray: [String] = [] var quizCount = 0 @IBOutlet weak var scroll: UIScrollView! @IBOutlet weak var image: UIImageView! override func viewDidLoad() { super.viewDidLoad() csvArray = loadCSV(fileName: "quiz") print(csvArray) quizArray = csvArray[quizCount].components(separatedBy: ",") quizNumberLabel.text = "第(quizCount + 1)問" let Path = Bundle.main.path(forResource: quizArray[0]as AnyObject as? String, ofType: nil) let image : UIImage = UIImage(contentsOfFile: Path!)! // 画像が表示されません↓ image.image = (quizArray[0]) answerButton1.setTitle(quizArray[2], for: .normal) AnswerButton2.setTitle(quizArray[3], for: .normal) AnswerButton3.setTitle(quizArray[4], for: .normal) AnswerButton4.setTitle(quizArray[5], for: .normal) AnswerButton5.setTitle(quizArray[6], for: .normal) scroll.delegate = self scroll.maximumZoomScale = 5.0 scroll.minimumZoomScale = 1.0 } func viewForZooming(in sclool:UIScrollView) -> UIView? { return image} //ボタンを押したときに呼ばれる @IBAction func btnAction(sender: UIButton){ if sender.tag == Int(quizArray[1]){ print("正解") } else { print("不正解") } nextQuiz() } func nextQuiz() { quizCount += 1 quizArray = csvArray[quizCount].components(separatedBy: ",") quizNumberLabel.text = "第(quizCount + 1)問"    //ここに次の画像に行ける、コードが欲しいのですがわかりません answerButton1.setTitle(quizArray[2], for: .normal) AnswerButton2.setTitle(quizArray[3], for: .normal) AnswerButton3.setTitle(quizArray[4], for: .normal) AnswerButton4.setTitle(quizArray[5], for: .normal) AnswerButton5.setTitle(quizArray[6], for: .normal) } func loadCSV(fileName: String) -> [String] { let csvBundle = Bundle.main.path(forResource: fileName, ofType: "csv")! do { let csvDate = try String(contentsOfFile: csvBundle, encoding: String.Encoding.utf8) let lineChange = csvDate.replacingOccurrences(of: "\r", with: "\n") csvArray = lineChange.components(separatedBy: "\n") csvArray.removeLast() }catch{ print("エラ〜") } return csvArray }

試したこと

色々と検索したり探したのですが、どうしても画像が入らず。。。。
また、次の問題に進むときに画像をまたcsvファイルの2段目にちゃんと移動したいです。
そもそもの画像は別ファイルにまとめて入れております。

csvファイルは

kougai1.png,1,1,2,3,4,5
kougai2.png,1,1,2,3,4,5
kougai3.png,1,1,2,3,4,5
kougai4.png,1,1,2,3,4,5
kougai5.png,1,1,2,3,4,5

最初にpng画像、正解番号 5択 です  この画像がうまくImageViewに反映されません

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

hoshi-takanori

2021/08/31 07:06

image.image = 〜 じゃなくて、judgeImageView.image = 〜 では。
tamakuri

2021/08/31 07:16

judgeimageViewは○と✖️を表示させるものでまた別なのです・・・・ image というものに表示させたいのです。 ややこしくてすいません!
hoshi-takanori

2021/08/31 07:34

ごめんなさい、見落としてました。そして、image という同じ名前のプロパティとローカル変数があるのが問題ですね。
tamakuri

2021/08/31 08:08

なるほど!! 一旦名前変えてみます!
tamakuri

2021/08/31 08:18

image をとりあえず gazouimage に変えましたが特に変化はないようです。

まだ回答がついていません

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

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

Swift

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