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

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

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

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

Swift

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

Q&A

1回答

1291閲覧

1つ目のViewControllerで指定した値を2つ目のViewControllerでも認識させたいです。

4696masiro

総合スコア6

Xcode

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

Swift

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

0グッド

1クリップ

投稿2017/03/30 18:24

###前提・実現したいこと
お聞きしたいのは
1つ目のViewControllerで指定した値を2つ目のViewControllerでも認識させたいです。

###該当のソースコード
swift
ここにご自身が実行したソースコードを書いてください
@IBAction func ff(_ sender: Any) {
ffcount += 1

一つ目の画面でボタンを押してカウントした数値(ffxount)を
2つ目の画面に持って来たいです。
二つ目の画面ではその数値によってボタンを押した時の反応を変化させようと思っています。

2つ目のViewControllerだとそもそもffcountの宣言から求められて困っています。

Xcodeのswift3を使ってやっています。
どうぞよろしくお願いいたします。

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

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

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

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

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

guest

回答1

0

簡単な方法としてはSegueで遷移して値を渡す方法があります。
prepare(for segue: UIStoryboardSegue, sender: Any?)で次の画面のオブジェクトを取得して自身のffCountを渡してあげるのが良いと思います。

swift

1 2import UIKit 3 4// --- FirstViewController --- 5 6class FirstViewController: UIViewController { 7 8 // ffCountプロパティ 9 var ffCount = 0 10 11 override func viewDidLoad() { 12 super.viewDidLoad() 13 14 } 15 16 @IBAction func countUp() { 17 // ボタンを押すとカウントアップ 18 ffCount += 1 19 } 20 21 override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 22 23 if segue.identifier == "Second", 24 let second = segue.destination as? SecondViewController { 25 26 // SecondViewControllerのffCountに値を渡す 27 second.ffCount = self.ffCount 28 } 29 } 30} 31 32// --- SecondViewController --- 33 34class SecondViewController: UIViewController { 35 36 // ffCountプロパティ(FirstViewControllerのffCountプロパティとは別の変数です) 37 var ffCount = 0 38 39 override func viewDidLoad() { 40 super.viewDidLoad() 41 42 print(ffCount) 43 } 44} 45

投稿2017/03/30 23:22

_Kentarou

総合スコア8490

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問