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

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

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

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

Xcode

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

Swift

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

Q&A

解決済

1回答

221閲覧

画面遷移しつつ遷移先の値を変更する

sena14

総合スコア109

iOS

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

Xcode

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

Swift

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

0グッド

0クリップ

投稿2018/07/18 10:50

A→B→C→DまたDからBに戻れるという画面遷移をします。
AからBに行く際には下記のようにBのnoの値をセットしBのviewDidLoad()でnoの値をLabelに表示しています(1)。DからBに戻る際にも改めてBのnoを変更してviewDidAppearでLabelに表示させているのですが(2)戻ってから表示が切り替わるまでにラグが出てしまいます。画面が切り替わった時には新しいnoが表示されていて欲しいのですがどうすれば実現可能でしょうか?よろしくお願いします。

1 //画面遷移 override func prepare(for segue: UIStoryboardSegue, sender: Any?) { guard let identifier = segue.identifier else { return } if identifier == "toB" { let B = segue.destination as! B B.no = self.no } } -------------------------------------------- override func viewDidLoad() { super.viewDidLoad() Label.text = string[no] }
2 //Bへ戻る @IBAction func toB(_ sender: Any) { no = Int(arc4random_uniform(UInt32(10))) if let navi = navigationController { for vc in navi.viewControllers { if vc is CountViewController { let VC = vc as! B VC.no = self.no navi.popToViewController(vc, animated: true) } } } } --------------------------------------------------------------- override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(false) Label.text = string[no] }

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

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

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

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

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

guest

回答1

0

ベストアンサー

viewWillAppearを記述してそちらにviewDidAppearに書いてある処理を移動したらいかがでしょう?

投稿2018/07/18 12:27

_Kentarou

総合スコア8490

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

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

sena14

2018/07/18 12:43

viewWillAppear()っていうのもあるんですね! 無事できました!ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問