【Swift】2つ以上のViewControllerで、共通の変数や定数を使うには

目次

複数のViewControllerで共通の値を使う理由

プログラミングの実力が上がってくると、2つ以上のシーンを作ってシーンを移動するプログラムを作るようになります。そして各シーンについてViewControllerがありますので、例えば2つのシーンがあれば2つのViewControllerがあります。そして2つのViewControllerで共通の値(変数・定数)を使いたい場合が出てきます。

共通の値を使う方法はいくつかあるようです。ここでは私が使っている方法を紹介します。

グローバル変数や定数を一つのViewControllerのクラスの上に定義

例えば、次のように設定します。

import UIKit
var gLanguage:String = "EN" 
class ViewController: UIViewController {
・・・・・・・・・・・・
}

この例ではgLanguageというグローバル変数をclassの上、importの下に定義しています。ここで定義すると他のViewController(例えばInfoViewControllerなど、別の名前のViewController)でこの変数が使えます。この例ですと他のViewControllerでもgLanguageは”EN”です。変数ですのでどちらのViewControllerでも書き換えられます。
グローバル定数も同様に定義できます。
なお、他のViewControllerのclassの上に同じ名前の変数を定義してはいけません。

最後に

グローバル変数は、定義したViewControllerとは違う別のViewControllerでも共通で使うことができるというお話でした。

コメント

コメントする

CAPTCHA


目次