Labs

<< 最初 < 前ページ 次ページ > 最後 >>
icon IBでUIButtonに枠を付ける (2015/11/13)
Xcode6で「@IBDesignable」「@IBInspectable」を利用してカスタムViewをIB上で設定できるようになった。

UIButtonに枠をつける

UIButtonのカスタムクラス作成

CustomButton.swiftを作成
import UIKit

@IBDesignable
class CustomButton: UIButton {
    
    @IBInspectable var textColor: UIColor?
    @IBInspectable var cornerRadius: CGFloat = 0 {
        didSet {
            layer.cornerRadius = cornerRadius
        }
    }
    
    @IBInspectable var borderWidth: CGFloat = 0 {
        didSet {
            layer.borderWidth = borderWidth
        }
    }
    
    @IBInspectable var borderColor: UIColor = UIColor.clearColor() {
        didSet {
            layer.borderColor = borderColor.CGColor
        }
    }
    
}
・クラスは「@IBDesignable」で定義
・プロパティは「@IBInspectable」で定義

- Bool
- Int
- CGFloat
- Double
- String
- CGPoint
- CGSize
- CGRect
- UIColor
- UIImage

プロパティだけでなく、drawRect(rect: CGrect)をoverrideするなんてこともできるので便利

IBで設定

UIButtonを配置し「CustomButton」クラスを設定
UIButtonカスタム
プロパティが設定できる
UIButtonカスタム
設定した結果
UIButtonカスタム
icon 数字のカンマ区切り文字列 (2015/11/12)
数字をカンマ区切りの文字列にする場合、NSNumberFormatter()を利用する

        let formatter = NSNumberFormatter()
        formatter.numberStyle = NSNumberFormatterStyle.DecimalStyle
        formatter.groupingSeparator = ","
        formatter.groupingSize = 3

        let number:Int = 3480
        let stringNumber:String? = formatter.stringFromNumber(number)
        print(stringNumber)
icon 外部ファイルアクセスはimport不要 (2015/08/06)
Swift同士であれば、importしなくても他ファイルを相互アクセスできる(オートローダー的動作)。
例えば共通設定Swiftファイルを作成して、他のクラスファイルからアクセスする場合、

サンプル

struct Api {
    static let URL = "http://yoo-s.com/api/";
    static let ACTION_TEST = "test";
}
static変数をもつ構造体を定義

import UIKit

class ApiController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
    }

    func loadApi {
        let uri: String = Api.URL + Api.ACTION_TEST;
    }
}
<< 最初 < 前ページ 次ページ > 最後 >>