Swift
StoryboardでUITableViewからSegueを伸ばしていると、VCのライフサイクルとdidSelectAtRowのタイミングで2回呼ばれてしまうようです。こいつを治すには、Segueの貼り方を変えるだけ。VCから対象のViewControllerに向かってSegueを貼ります。あとはdidSelectA…
よくありますよね。SegmentedControlでスイッチを切り替えるタイミングで、ContainerViewのViewControllerを切り替えたいみたいな。あるある。先駆者の方々を探してみた所、下記のエントリが最も簡単に実行できた。ソースコピペして動きます。spin.atomicobj…
デフォルトの背景色が真っ黒らしい... UIColor.clearColor()を呼べば解決です。なんなのほんとw
Eurekaには「presentationMode」というプロパティがあって、これを実装しているRowに限りPushしたい対象のVCをカスタマイズできる。論よりコード。 Push CustomViewControler on Eureka Rowこれが一番簡単。
結構手順がややこしい。2時間ぐらいかかってしまった。 自分の作ってるViewをUIScrollViewの配下に置く まずはこれ。AutoLayoutを使っている場合は、こちらを参照下さい。この通りやったら出来ました。easyramble.com入れ込んだはいいけど、画面トップにIB…
簡単なことで、UIButtonのtitleLabelプロパティにはセッターが無いからです。getのみ。つまり、readonly.UIButton Class Referenceを参照下さい。↓のように、getしか無いです。gyazo.comボタンのタイトルラベルを変更するには、setTitleメソッドを使いましょ…
3日ぐらい前にSwift2.0対応をしてくれました。ありがてぇありがてぇ。github.comMappableというプロトコルを実装するだけで使えるようになりますし、Realmのオブジェクトもシリアライズすることが出来ます。 //User.swift import ObjectMapper class User : …
Swift2.0で構文が変わっている。昔はこんなシグネチャだった。 //1.2 NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding, error: nil) //2.0 NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding) throws try〜catch構文が入った…
iOS8.0以上をサポートするSwiftアプリを作っております。ちゃんと動くけど汚い。色々辛みがある。というわけで、ノーガードでその辛みを書いていこうと思います。 StoryBoardの辛み 僕の作ったアプリのStoryBoardはこんな状態になっている。Main.storyboard…
という症状に遭遇してしまいました。CoreDataで管理していたお買い物かごのオブジェクトを全消し。その後、ホームボタンをダブルクリックで実行中アプリの一覧からアプリを上にスワイプして削除。で、もう1度アプリを立ち上げると消したはずのデータが復帰…
iOS7対応のアプリをSwiftで開発する時の話です。 元ネタはこちら。UIAlertView is crashing app on iOS 7 swift - UIAlertView is crashing app on iOS 7 - Stack Overflow上記記事にあるように、下記のソースコードでiOS7,8の判定をしてはいけません。 if l…
Using UIScrollView with Auto Layout in iOSここに書いてある内容を読んだ。やっと言っている意味がわかってきたので、まとめておく。 UIScrollView→UIView(以後ContentViewとする)という配置方法を取る。 UIScrollVIewはViewControllerのViewにぴったり合…
Swiftアプリを作って、その中でSwiftのライブラリを参照している形をとっている時に注意が必要。ArchiveしてApp Storeに配信する時に以下のようなエラーが出て審査が通らない可能性があるためです。これが曲者なのが、AdHocで実機に入れる時は何の問題もない…
これが一番柔軟でええわ。Delegateを経由して子供からコールバック用の処理を叩くSwift で delegate (デリゲート)を使って View を閉じた時にイベントを発火させる方法 var delegate: ParentViewControllerDelegate! func closeModalView() { self.dismiss…
鉄板の小ネタですかね。 override func viewDidload() { let myTap = UITapGestureRecognizer( target: self, action: "tapGesture:") self.view.addGestureRecognizer(myTap) } func tapGesture(sender: UITapGestureRecognizer){ for v in self.view.subvi…
iOS6から導入されたというこのAuto Layout. ユニバーサルアプリを作る場合にframeをチマチマいじって(別にそんなに大変でもないと思うけど) 調整しなくても良いというメリットがあるようだ。具体的には親のViewからどれだけのマージンを取るかを上下左右(左…
Swiftのドキュメントに書いているARCのデイニシャライザ (deinit)を呼ぼうとしたら動かなかった。Deinit method is never called - Swift playground Xcode's Playgrounds for Swift don't work like regular apps; they aren't being run just once. The ob…
The Swift Programming Language: Propertiesよりこれは簡単でびっくりだ。C#のPropertyChangedよりもイケてる仕組みだと思う。 class StepCounter { var totalSteps: Int = 0 { willSet(newTotalSteps) { println("About to set totalSteps to \(newTotalSt…
JS使いならふつーの話だけど。こういうコードを見るとObjective-Cとは全く別やなぁ・・・ //Intを引数にしてIntを返す関数を返す func makeIncremeter()->(Int->Int) { func plus(number:Int) -> Int { return number + 1 } return plus } var increment = m…
iOS4.3以来のiOS開発をすることになり、iOS7以上でいいんでSwiftで実装することに決めた。絶対、今のほうが楽だ。当時はARCがなくてシビアなコード書いたわー。すぐ落ちたりしたわー。Swift離陸ガイド作者: 高橋政明出版社/メーカー: 有限会社 快技庵発売日:…