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の方が手を抜きやすい。楽です。

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

2Dバーコードをスキャンする

なんと2Dバーコード読み込み機能はAVFoundationに実装されています。GitHubにbowstさんが公開しているシンプルなソースがあったので共有です

SqliteのDBファイル保存+レビュー却下

2回既にレビューを通過していたアプリが、バイナリレビューで却下されてしまいました。理由は、2.23 Details On launch and content download, your app stores 26.48MB on the user's iCloud, which does not comply with the iOS Data Storage となっていてiCouldに保存される量にしては多いから管理してください、といった旨の内容でした。別に却下理由に難癖つけるつもりではないのですが、最初のレビュー時にいってほしい。。。

UIWebView

アプリの中にWebビューを作成して外部ネットワークやローカルのhtmlやcssやjsファイルと連携する方法の説明です。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!