Author Archive

CocoaPods 1.7.0.beta.1 で pod trunk push に失敗

pod lib lint XXX.podspec は XXX passed validation. となるのに、pod trunk push XXX.podspec だと失敗してしまった時の話。 具体的には、以下のような […]

Generic型にstatic letは定義できない

class Class { static let value: Int = 1 //ERROR: Static stored properties not supported in generic types } たとえ […]

Protocol内にアクセス修飾子は不要

public protocol SomeProtocol: class { public func someMethod() } と記述したら、 "'public' modifier cannot be used in […]

Apple Watchを1年間使用して

Apple Watchが手元に届いたのは、ちょうど去年の5/16。以来筆者は、毎日欠かさず着用している。 Apple Watchに関しては、近々次世代モデルが発表される可能性は大いにあるし、来るWWDC16ではwatch […]

Jawbone UP24 を使用し始めて1ヶ月が経った

ということを、今日UPアプリが教えてくれた。 筆者は、Apple Watchも併用しているため、UP24購入はアクティビティログではなく、睡眠トラッキングが目的だった。 ちなみにUP2はJawbone UP24シリーズの […]

[Swift]標準APIの戻り値型[AnyObject]をどうにかしたい

標準APIにも関わらず、戻り値の型が[AnyObject]であるものがいくつか残っている。 Swiftが安全性のひとつとして型推論を標榜しているだけに、戻り値型を不用意に特定してくれないのは困りものだ。 以前は、NSLa […]

[Swift]演算子を自作する

なんらかの処理で得られた結果を、メンバ変数などに上書きする状況を考える。 つまり、結果として何らかの値が得られれば上書きをし、なければ(結果がnilであれば)しない、というロジックなのだが、その実装は以下のように実現でき […]

[Swift]String型をキーとするDictionaryを拡張する

String型の値をキーとするDictionary型のextensionを実装したい場合、いわゆる constrained extension でキーの型を限定して拡張する。 extensionのwhen clauseは […]

[Xcode 7.1] PlaygroundのTimelineにViewを描画する

このような感じに。 Xcodeバージョンによって実装方法が異なるが、Xcode 7.1では以下のコードを挿入する。 [crayon-5c996d2d1d77b494242086/] ちなみに、この方法ではTimeline […]

円型プログレスバーをCAShapeLayerで実装する

App StoreアプリやiTunes Storeアプリなど、iOSのUIで多用されている、ダウンロード中の進行状況を示す円型プログレスバーを作りたい。 はじめCGPathAddArc(path: m: x: y: ra […]