StoryboardでViewの縦横比を保って配置する

これはきっと常識なのだと思うのですが、今まで知りませんでした・・・

Viewに "Aspect Ratio" の制約をつけると、縦横比を保ったまま AutoLayout で配置できます。 端末の横のサイズに合わせて、比率を変えずに縦を自動的に調整したい時などに最適です。

設定方法
  1. 対象のViewを選択し、「Add New Constraints」-> 「Aspect Ratio」にチェックして制約を追加
  2. 比率は制約の「Multiplier」にて設定する (4:3とか1.3とか)

参考
1. Auto Layout の Multiplier の指定方法いろいろ - ObjecTips

your company

友人からのメールで、会社とか関係ない文脈で your company というフレーズが何回かでてきて、???となった。

Thank you for your company.
They enjoyed your company.

調べてみたら、company には「会社」以外の意味がたくさんあった。全然知らなかった。

  • (一緒に何かをする)友、仲間
  • 来客
  • 付き合い
参考

SwiftのenumをObjective-Cから使う

Int型のenumのみ利用可能、@objcをつける

Swift側

@objc public enum Animal: Int {
    case Cat = 1
    case Dog = 2
    case Hamster = 3
}

Objective-C

Animal animalType = AnimalCat;
switch (animalType) {
    case AnimalCat:
    case AnimalDog:
    case AnimalHamster:
        // 何か
        break;
}

ただし、Objective-Cのヘッダファイルで参照するのは大変そう。

参考
1. Objective-CからSwiftのenumを使う - kitoko552.memo
2. Objective-CのHeaderでSwiftのenumを使う - Qiita
3. SwiftとObjective-Cでenumの相互利用 - Qiita

XLPagerTabStrip で buttonBarMinimumLineSpacing が効かない

スクロールするタブメニューにしたかったので、XLPagerTabStripを利用。 github.com

導入は公式のGithubと、以下のサイトなどを参考にしました。

1つハマった点があり、タブとタブの間の区切り線を表現するために、以下のコードを super.viewDidLoad() の前に入れましたが、タブ間のスペースが広いままで狭くなりません。

settings.style.buttonBarMinimumLineSpacing = 0.5

解決策は、Storyboard側で設定すること。
Collection View Flow Layout -> Min Spacing -> For Cells の設定を 10 から 0.5 に変えたら、期待する表示になりました。