2017-04-01から1ヶ月間の記事一覧
let button = UIBarButtonItem(customView:button) self.toolbarItems = [flexl, button, flexr] self.navigationController?.toolbar.barTintColor = UIColor.White self.navigationController?.setToolbarHidden(false, animated: true)
UICollectionViewを継承したクラスをつくり、layoutsubViewsで中心からコンテンツが1/4程度外れていたらContentOffSetを中央へ移動させるようにすれば良い。 let totalContentWidth = CGFloat(cellCount) * cellWidth let centerOffsetX = totalContentWidth…
BehaviorSubjectは最後の値を覚えていてsubscribeで即座に値が返ってくる。最初の値はこちらで指定できる。 class Temperature { private let behaviorSubject = BehaviorSubject(value:0) var behavior : BehaviorSubject<Int> { return behaviorSubject } func </int>…
自動的に文字の大きさを設定してくれる。フォントを対応するタイプを指定すれば良い。 UIFont.preferredFont(forTextStyle: .body) ストーリボードでもできる。コンテンツサイズの変更は次の通知を受ければ解る。 Notification.Name.UIContentSizeCategoryDi…
contentSizeをオブザーブして textView.addObserver(self, forKeyPath: "contentSize", options: .new, context: nil) contentSizeに変化があれば、中身を調節する。 override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NS…
次のようなクラスを定義する。 class Temperature { private let eventSubject = PublishSubject<Int>() var event: Observable<Int> { return eventSubject } func doSomething(x:Int) { eventSubject.onNext(x) } } テキストフィールドの編集が終わったタイミングで</int></int>…
RxSwiftを試してみた。CocoaPodでインストールした上で以下をインポート import RxSwift import RxCocoa 使い方は textFiled!.rx.text .map { guard let text = $0, text.lengthOfBytes(using:.utf16) > 0 else { return "" } return "\(text)!" } .bindTo(l…
継続モナドはSwiftで段階的に作れる。1. まず継続渡しの関数を作る。 func getA(complete:(String)->Void) { complete("X") } 2. 継続渡しの関数を引数にとるクラスを作る。 typealias Func<T> = (T)->Void public struct RDFuture<T> { public var f:(Func<T>)->() p</t></t></t>…
.gitconfig に設定を書くこれはターミナルでできる。 git config --global http.proxy http://name:pass@host:port git config --global https.proxy https://name:pass@host:port
Realmを試してみた。便利だ。。 import Foundation import RealmSwift class Man : Object { // ObjectはRealmのクラス dynamic var name = "" // dynamicはobjective-Cのランタイムを利用して値にアクセスする dynamic var age = 10 let cats = List<Cat>() // L</cat>…
export USERNAME= export PASSWORD= export HOST= export PORT= export PROXY=$USERNAME:$PASSWORD@$HOST:$PORT export http_proxy=http://$PROXY export https_proxy=https://$PROXY export ftp_proxy=ftp://$PROXY export HTTP_PROXY=http://$PROXY export…
水平な線形レイアウトで隙間を調整したい時、しかもminimumをなくしたいと考えた時、ラインも修正すると良い。
セクションは流れていく。それを止めるには stackoverflow.com