Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > Staticな変数や関数

Staticな変数や関数

静的なスタティックな変数や関数はSwiftではどうやって宣言するのか説明します。PHPで一度宣言させたらソースのどこからでもStaticClass::memberFunctionみたいに 実行できるような形をSwiftでどう実際に行うかを調査します。

静的な変数

以下私のお粗末なソースの一部で恐縮ですが、、、クラス名の前にstruct, 変数の前にstaticをつけることでプロジェクト側から簡単に呼び出すことができます。


//GlobalDataという静的な変数セットをもつ静的クラス
import Foundation
import UIKit
import SpriteKit
import AVFoundation

struct GlobalData {
    //var
    static var mainViewController:ViewController = ViewController();
    static var game_data:String = "";
    static var event_layer:UIView = UIView();
    static var main_layer:UIView = UIView();
    static var containerDirectionToLeft:Bool = true;
    static var containerDirections:Array = Array();
    static var screenshot:UIImage = UIImage();
    static var audioPlayerGameOver:AVAudioPlayer = AVAudioPlayer();
    //let
    static let C_APP_NAME = "Swift-salaryman";
}

プロジェクトからは以下のように簡単に呼び出すことができます。Swiftはヘッダファイルが必要ありませんので、上記のGlobalDataの静的ファイルが プロジェクトに追加されてさえいれば、以下はコンパイルエラーなく処理してくれます。


    override func viewDidLoad() {
        super.viewDidLoad()
        GlobalData.mainViewController = self;
    }

静的な関数

変数と同じでstructと宣言したクラスにstaticで関数を追加することで対応できます。


struct SwiftSalarymanUtil {
    static var age = 33;
    static func say(){
        println("I am a salaryman");
    }
}

プロジェクトからは上記同様に以下のように呼び出すことができます。


    override func viewDidLoad() {
        super.viewDidLoad()
        SwiftSalarymanUtil.say()
    }

まとめ

PHPなんかはrequireで追加を名言する必要があっただけにSwiftの方が手を抜きやすい。楽です。

↓こんな記事もありますよ!

新しくなったLawsonの無料WiFiを試してみた

ネットでローソン無料Wifiを調べていたのですがネットを接続するにはアプリが必要との誤情報が多かった(今まではアプリが必要だった)ですが、2015年の6月からはアプリの必要ありません。 Wifiで接続して登録すればPCからでも利用できました。手順を記載してまいります。

SwiftでZipファイルの解凍や圧縮する方法

SwiftでZipの解凍・圧縮処理の解説です。標準ライブラリにZip2があるやら3rdパーティのSSArchiveのObjective-Cのライブラリを Swiftにブリッジして利用するのが良い等の記載がありましたので調査してみます。

UINavigationController

TabBarとUITableViewControllerを利用して一つのUIViewControllerだけをクリックすると右にスライドするUINavigationControlerを 利用したサンプルを記載します。というのも、AppDelegate内でUINavigationをself.windowのrootviewcontrollerにセットする 方法は多々あったのですが、AppDelegate内を利用しないでNavigationを実装する方法がなくハマっていましたのでを以下記載します
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!