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

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

ただいまの
回答率

90.34%

  • Swift

    7660questions

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

  • Xcode

    4330questions

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

  • iOS

    4173questions

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

繰り返し表示

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 335
退会済みユーザー

退会済みユーザー

二つ画面があり、一つ目の画面に20個の画像が順番に表示されるようにしていて、二つ目の画面に画面遷移し、一つ目の画面に戻ると、画像が表示されません。
一回アプリを閉じて、アプリの履歴を消すと画像は表示されます。しかし画面遷移して戻ると画像が表示されません。

        @IBOutlet weak var imageView: UIImageView!


        override func viewDidLoad() {
            super.viewDidLoad()

            //お菓子の画像

            let Image1 = UIImage(named:"1")!
            let Image2 = UIImage(named:"2")!
            let Image3 = UIImage(named:"3")!
            let Image4 = UIImage(named:"4")!

            let Image5 = UIImage(named:"5")!
            let Image6 = UIImage(named:"6")!
            let Image7 = UIImage(named:"7")!
            let Image8 = UIImage(named:"8")!

            let Image9 = UIImage(named:"9")!
            let Image10 = UIImage(named:"10")!
            let Image11 = UIImage(named:"11")!
            let Image12 = UIImage(named:"12")!

            let Image13 = UIImage(named:"13")!
            let Image14 = UIImage(named:"14")!
            let Image15 = UIImage(named:"15")!
            let Image16 = UIImage(named:"16")!


            let Image17 = UIImage(named:"17")!
            let Image18 = UIImage(named:"18")!
            let Image19 = UIImage(named:"19")!
            let Image20 = UIImage(named:"20")!

            // UIImage の配列を作る
            var imageListArray :Array<UIImage> = []

            imageListArray.append(Image1)
            imageListArray.append(Image2)
            imageListArray.append(Image3)
            imageListArray.append(Image4)

            imageListArray.append(Image5)
            imageListArray.append(Image6)
            imageListArray.append(Image7)
            imageListArray.append(Image8)

            imageListArray.append(Image9)
            imageListArray.append(Image10)
            imageListArray.append(Image11)
            imageListArray.append(Image12)

            imageListArray.append(Image13)
            imageListArray.append(Image14)
            imageListArray.append(Image15)
            imageListArray.append(Image16)

            imageListArray.append(Image17)
            imageListArray.append(Image18)
            imageListArray.append(Image19)
            imageListArray.append(Image20)


            // view に追加する
            self.view.addSubview(imageView)

            // 画像の配列をアニメーションにセット
            imageView.animationImages = imageListArray

            // 3秒間隔
            imageView.animationDuration = 25
            // 3回繰り返し
            imageView.animationRepeatCount = 100
            // アニメーションを開始
            imageView.startAnimating()
  • 気になる質問をクリップする

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

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

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

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

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

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

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

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

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

+1

viewDidLoad を viewWillAppear とかに変えてみてはどうでしょうか。
viewDidLoadは画面が作成されたタイミングでしか呼ばれないので、次の画面から戻ってきた時には呼ばれません。
「viewDidLoad 呼ばれない」とかで検索したらいろいろ出てくるかと思います。
「UIViewController ライフサイクル」とかもオススメです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/02/20 16:06

    たくさん使い分けがあるんですね!!

    viewDidLoad を viewWillAppear とかに変えてみたんですが、エラーが出てしまい調べたらswift3
    だとエラーだでるみたいだと書いてあって。


    override func viewWillAppear() {
    super.viewWillAppear()

    エラー内容①
    Method does not override any method from its superclass

    オーバーライとされてませんと出てきました。

    エラー内容②
    Missing argument for parameter #1 in call

    引数がない?というエラーが出ました。

    キャンセル

  • 2017/02/20 16:44

    override func viewWillAppear(_ animated: Bool) {

    }

    キャンセル

  • 2017/02/20 16:45

    viewWill までいれて escキーとかおせば補完してくれます

    キャンセル

  • 2017/02/20 17:06

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


    override func viewWillAppear(_ animated: Bool) {


    super.viewWillAppear ()

    としたら、エラー内容①は解決しましたが、
    super.viewWillAppear ()

    の部分に
    Missing argument for parameter #1 in call
    のエラー内容②が出ていて直りません。引数がないのでしょうか?

    キャンセル

  • 2017/02/20 17:07

    super.viewWillAppear(animated)

    キャンセル

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

  • Swift

    7660questions

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

  • Xcode

    4330questions

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

  • iOS

    4173questions

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