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

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

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

HOME > カスタムクラスを作成する時いつも忘れる

カスタムクラスを作成時いつも忘れる。継承クラス作成時のメモ

カスタムクラスを作成する時いつもUIViewを継承する際のrequired Initの箇所でハマってしまうので覚書です。

参考:swiftでカスタムクラスを作ろう
参考:Storyboard上だけでUIButtonを角丸に!カスタムクラスで設定項目を拡張する!
参考:UIView inheritance and custom initializers throws EXC_BAD_ACCESS in swift

やってみた

NSObjectの場合


class TestNSObjectSubclass : NSObject {
    
    func test(){
        println("test is called");
    }
}

UIViewの場合


class TestUIViewSubclass : UIView {
    
    func test(){
        println("test is called");
    }
}

そのままです

カスタマイズ

コンストラクタに引数を渡したい場合は以下のように調整します

NSObjectの場合


class TestNSObjectSubclass : NSObject {
        
    init(param1:String){
        println("\(param1)");
    }
    
    func test(){
        println("test is called");
    }
}

UIViewの場合


class TestUIViewSubclass : UIView {
    
    init(frame: CGRect, param1:String){
        super.init(frame: frame);
        println("\(param1)");
    }
    
    required init(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
    
    func test(){
        println("test is called");
    }
}

UIVewを継承する際はこのrequred initが必要

まとめ

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

アイコン一括作成サービス紹介

アプリのアイコンを作るのは手間で面倒くさい。と、思いながらPhotoshopで一つ一つサイズを変えて作っていたのですが、 簡単につくれるサービスやっぱりありました。Macのスクリプトだったり、Webサービスだったりと揃っていましたので共有します。

NSURLConnectionでHTTPやFTPアクセス

今回はiPhoneとサーバ間でHTTPやFTPプロトコル通信を行うNSURLConnectionの説明

SQLiteを使いたい。ラッパーを検証してみる。(#2)

前回の記事でSQLiteのラッパのRMDB, SWiftData,SQLite.swiftの検証をトライしまいたが、時間の問題で頓挫してしまいましたので続きです。 。ある程度準備が完了しましたので、それぞれのサンプルを動かしてみてみようと思います。InsertとSelectとインストール感を比較してみます。
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!