not good but great

プログラミング、アート、映画・本の感想について書きます。

Swift

Swiftでデザインパターンを少し学ぶ

github.com Swiftでデザインパターンを少し学んだ。 こちらのブログやレポジトリを参考にした。 Swiftで学ぶデザインパターン1 (Singleton パターン) - しめ鯖日記 GitHub - ochococo/Design-Patterns-In-Swift: Design Patterns implemented in Swift 5.0 …

UIPercentDrivenInteractiveTransitionを使ってModalをDismissする

github.com UIViewControllerAnimatedTransitioningを使ってカスタム遷移を作ったことがあったのだけど、それをスワイプなどのインタラクティブな操作で遷移できるようにしたかった。 iOS7からUIPercentDrivenInteractiveTransitionを使えばInteractiveな遷…

もくもく会で「ボタンアニメーションに三角関数を導入して徒労に終わった話」というLTした

ボタンアニメーションに三角関数を導入して徒労に終わった話 from Naoya Shiga www.slideshare.net リブセンスさんのもくもく会でLTをした。中身は薄いと思うw 画面描画は60fpsなので100回も繰り返しても、そのほとんどは捨てられるっぽい。だから100回も繰…

Swiftで乱数を扱うときに便利な拡張(matttさん作)

gist.github.com swiftで乱数を扱うときに、毎回どうやって書くんだっけ?となるので調べた。arc4random()とか書くのが長くて嫌なので、良いサンプルがないのか探したら、matttさんが書いていた。 IntやDoubleをそのまま拡張しているので扱いやすいと思う。 R…

Clean Build Folderの実行のやり方

fromatom.hatenablog.com これと全く同じエラーにはまった。 Clean Build Folderが選択できないので調べた。以下の方法でできた。エラーも解決。 xcode6 - Clean Build Folder option disabled in Xcode 5 - Stack Overflow I tried the following steps. Pr…

「SwiftでTableViewをかっこよく登場させる」というLTをした@フリースタイルもくもく会

Supports the information hierarchy by animation transition from Naoya Shiga www.slideshare.net GitHub - naoyashiga/RPAnimatedTable: Supports the information hierarchy by animation transition アニメーションするtableViewについて話した。「100…

min,maxを使ってifを用いずに変数が範囲内か確かめる

条件 0 amountが上のような条件を満たすとする。 ifを使わずにcheck let amount = min(1, max(0, amount)) min,maxを使えばifを使わずにでも、checkができる。

Swiftのios-chartのEasing関数がまとまっていて勉強になる

github.com internal static let Linear = { (elapsed: NSTimeInterval, duration: NSTimeInterval) -> CGFloat in return CGFloat(elapsed / duration); } internal static let EaseInQuad = { (elapsed: NSTimeInterval, duration: NSTimeInterval) -> CGF…

Trailing closure syntaxを使ってsplitのisSepalatorを省略する

let num = "one,two,three" //["one", "two", "three"] let array = split(num){ $0 == "," } SwiftではcomponentsSeparatedByStringではなく、splitで文字列を分割することができる。またTrailing closure syntaxを使って、isSepalatorを省略することもでき…

CADisplayLinkとかanimateWithDurationらへんでアニメーションさせるコード読んだ

qiita.com こちらの記事を書いた。GitHub - fastred/BouncyView: Action Sheet animation based on Skype's iOS app. Skypeのアニメーションのクローンらしい。 Recreating Skype's Action Sheet Animation – Arek Holko こちらの記事を読んでいると、自分の…

UICollectionViewの上にあるUIGestureRecognizerを有効にする

UIScrollView(UITableView, UICollectionView)の上にUIGestureRecognizerをおくと、元のUIScrollViewのgestureが効かなくなってしまう問題 - synblog どうやるか調べていたら上の記事にたどりついた。swiftだと以下のようになる。 func gestureRecognizer(ge…

SwiftでUILabelの行間を調整する

UILabelの行間を調整したかった。Storyboardでやりたかったけど、方法がわからなかったので、プログラムで調整した。http://tech.eversense.co.jp/59 これ読んだ。 //行間を調整 let attributedText = NSMutableAttributedString(string: entry.title) let p…

「Swiftもくもく会 in Relations Inc.」に参加しました

swiftmokumoku.connpass.com 2日連続で、「もくもく会」に参加してみた。今回はビールが出ました!お菓子も出ました!非常に良い環境で集中できた。 viewを角丸に hogeView.layer.cornerRadius = 10.0 角丸に調整した。 enumで定数を管理 せっかくのもくもく会…

「第26回 Swiftもくもく会 in BizReach(渋谷)」に参加して、WKWebViewにObserverをセットした

biz-ocean.connpass.com 勉強会に参加してみようと思い、まず参加しやすそうな「もくもく会」に参加してみることにした。渋谷クロスタワーであった。近くに王将があるので、腹ごしらえもできる。 めちゃくちゃ集中できた デュアルディスプレイじゃないし、わ…

Swift製のアニメーションライブラリ「Spring」にPull requestしてみた

「Spring」にPull request Add easing functions by naoyashiga · Pull Request #40 · MengTo/Spring · GitHub 折角Githubアカウント持っているのだから、Pull requestしてオープンソースに貢献してみようと思った。かと言って技術力もないので、簡単でせこ…

Swiftで文言のローカライズをする

今更感あるけど、言語のローカライズを行った。 http://rshankar.com/internationalization-and-localization-of-apps-in-xcode-6-and-swift/ swift-studying.com Localizable.stringsにて各言語の設定をする。 TITLE = "hoge"; //hoge let TITLE = NSLocali…

SwiftでGoogle Places API レーダー検索のリクエストurlを作成する

nearbysearch 「近くのスタバ」ではGoogle Place APIのnearbysearchを使っていた。これは詳しい情報が返ってくるが、20件しか取得できない。 https://developers.google.com/places/documentation/search#PlaceSearchRequests RadarSearch RadarSearchは緯度…

Admobのインタースティシャル広告を出したいときはインスタンスを再生成する

Admobでinterstitial広告を出すために下のページを参考にしました。 http://lab.adn-mobasia.net/?p=3894Interstitial ads | iOS | Google Developers interstitial.loadRequest(GADRequest()) これで広告をロードするのだけど、インスタンス一つにつき表示…

SwiftでGoogle Directions APIを使う時に参考にしたページ

これ見た。日本語訳されている。 Google Maps Platform Documentation | Directions API | Google Developers具体的なコーディングはこちらを参考にした。 http://www.raywenderlich.com/81103/introduction-google-maps-ios-sdk-swift

Google Place APIを叩いてGoogle Mapに表示するときに見たページ

店舗情報APIを探した iOSで店舗情報を取得したいと思い、apiを探した。 ぐるなびは却下 ぐるなびは使用するときはぐるなびを使っていることをバナーなどで明示する必要があったためやめた。 ヤフーは国内だけ。。。 次はヤフーのAPI。国内で使う場合は特に問…

Parse使ってみた

このへん参考にした。 [Swift] Parseでデータを読み込む | DevelopersIO サーバーサイド実装を1行もせずにバックエンドと連携するiOSアプリを開発する - Yahoo! JAPAN Tech Blog DB作成 Parseにsign upしてつくった。classNameは「Entry」にした。 titleを取…

Safariみたいにスワイプで戻るなら、UIWebViewではなくWebKit Framework

UIWebViewでフリックで戻ったり、進んだりするのをswipe gestureを使って実装した。しかし瞬時にページ変わるので、Safariのようにページ自体をドラッグしながらページ遷移したいと思った。調べたら、WebKit Frameworkというものがあった。 iOS 8から追加さ…

Swiftで区切り文字を指定して文字を分ける

var str = "Hello|playground" var strArray:NSArray = str.componentsSeparatedByString("|") //["Hello","playground"] componentsSeparatedByStringを使う。

unable to dequeue a cell with identifier reuseIdentifierが出たときの対処法

これが出て困っていた 'NSInternalInconsistencyException', reason: 'unable to dequeue a cell with identifier reuseIdentifier - must register a nib or a class for the identifier or connect a prototype cell in a storyboard'

NSXMLParserを使う

rss取得をしてみようと思った。NSXMLParserというのを使うらしい。・参考 http://eure.jp/blog/swift_rss_kim/ BlogReader App in Swift – Ravi Shankar

SwiftでSpritekitのSKActionを使ってフェードインを作る

let zeroAlpha:SKAction = SKAction.fadeAlphaTo(0, duration: 0) let fadeToAlpha1:SKAction = SKAction.fadeAlphaTo(1.0, duration: animationDuration) let fadeIn:SKAction = SKAction.sequence([zeroAlpha,fadeToAlpha1]) startBtn.runAction(fadeIn) f…

SwiftでしょぼいCookie Clickerもどきを作る

objcで製作中のアプリが一段落したので、swiftを6月以来触ってみた。せっかくなので最近触っているSpriteKitを使った。cookieclickerもどきを作ってみることにした。 http://cafe-capy.net/cookieclicker/

Swiftでパーティクルを動かす

demo Swiftを触ってみた jsみたいにvarを使うし、Cみたいに型を指定するし、pythonみたいに改行にコロンがいらないです。コードがわからずに調べてもObjCの情報ばかりで、それをSwiftに変換するのが大変でした。