だいたいそれでいいんじゃないの

つれつれなるkixixixixiの技術的なストック。http://reload.co.jp

iOS

Alamofireでsession(cookie)を永続化する

Bridge-Headerを使えば簡単にObjective-Cのコードを使えるのでずっとAFNetworkingをつかってました。 だけど、今更だがSwiftだけにしてみようと思ってAlamofireを使ってみた。 (単にGAがいらない案件がきたってわけではないよ...w) HTTPリクエストを投げる…

UIAlertView/UIAlertControllerは極力使わないほうがいいと思うはなし

iOS

タイトルがほんのすこし釣りくさいですが、タイトル通り。 個人的な意見ですが、iOSのUIとしてUIAlertView/UIAlertController(以下Alert)を極力つかわないと思っています。 なぜかというと、 - ユーザの動きを強制的に止めてしまう - 基本的には警告表示す…

iOS強制アップデートの機構について

iOS

強制アップデートを実装しておいた方が、今後機能拡張した際に助かるはず! ということで実装したのですが、わざわざそれのためにエンドポイントを作るのは微妙だし毎回確認してたら無駄なオーバーヘッドが増えるなと思います。 なので、考えた手段は、 - HT…

TPKeyboardAvoidingTableViewがiOS8.3 SDKでうごかない

iOS

タイトル通り。 反応してくれないくてコードみてたらnotificationの登録が行われていないことがわかる。 TPKeyboardAvoidingTableViewではこのように記述されています。 Apps built using the iOS 8.3 SDK (probably: older SDKs not tested) seem to handle…

プロパティのsetter,getter

プロパティのsetter,getterが簡単にできるようなのでいじってみた。 private var _name = "" var name : String { get { return _name } set(newValue) { _name = "Mr. \(newValue)" } } こんな感じ。 set(newValue)はsetに省略できたり。 nameに代入された…

[swift] UIViewのsubclassでのinitの挙動

UIViewのサブクラスを作ったときにinitでの挙動がどうなっているのかなーって疑問になったので自分のまとめ載せておきます。 init()自体をoverrideして初期化時の処理を追加したいときにかくべきなのはinit()なのかinit(fram:)なのか。 とりあえず、下記の挙…

Swiftでpragma markをかく

Xcodeでコードの可読性を上げるためにpragma markを使うのでその紹介です。 参考: #pragma markの意味| ずっとMegane。 Swiftで pragma mark を書きたいけども#pragam markってSwiftでかけない! 調べたら、方法ありました。 // mark: で書けるようです。 コ…

UIWebViewでの広告クリックでコンバージョン計測したい

iOS

表題の通り。 要望があったので書きますー。 どういうことかというと、 - iOSアプリでwebviewを使ってコンテンツの表示等を行っている - webview上で広告を配置 - 広告がリダイレクトを挟んでいるのでコンバージョン計測をしていそうだ - コンバージョン計測…

swiftのfor文

iOS

for in を使った簡単なループの書き方 なんど書いてても忘れてしまい、なんども調べてるので備忘録。 0から10まで繰り返します。 for i in 0...10 { // do something } 最後の処理がいらないときは for i in 0..<10 { // do something } これだけ

SwiftのForeachをかく

iOS

foreach的なことをswiftでするための備忘録 for element in list { // do something } 同時にIndexを追うこともできます。 for (index, element) in enumerate(list) { // do something } 型の定義は大丈夫なのですかね。 以上。

SwiftでのLiteralTypeってなんだ!?

iOS

きっかけは些細なことでした。 UIView.animateWithDuration( delay: options: animations: completion:)を書いているとき、delayに変数を代入しました。 コンパイルエラーでswiftでがエラーを返します。 !? animateWithDuration with an argument list of …

cocoapodsで複数ターゲットにライブラリーをいれてみた

iOS

プロジェクト内にターゲットを追加して同じライブラリを追加するときにハマったので、備忘録として。 あらまし cocoapodsで作ったプロジェクトに新規でtargaetを追加して同じライブラリを利用したいと思った。 XCodeからターゲットを追加して、pod installす…

xcode6でstoryboardなしでprojectを作る方法!

iOS

ios8とかでたんで、xcode6に切り替えたら、 empty projectがない! なのでsingle view framework でつくってstorybordを消すことに。 appdelegate.m に下記を追加して self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; self…

nendのcocoapodsつくってみた

iOS

nendをわざわざ毎回frameworkいれるのが面倒だなーと思っていたので下記のものをつくりました。 kixixixixi/nend cocoapodsで pod 'nend', :git => 'https://github.com/kixixixixi/nend.git' みたいなものを書いてインストールするだけです。 まぁフレーム…

UITableViewCell内でのUIViewのTouchBeganイベントをUIViewControllerであつかいたい!

iOS

表題のまま(UITableViewCell内でのUIViewのTouchBeganイベントをUIViewControllerであつかいたい!)のことをしたいから、UITableViewをカテゴリー拡張してみたよ。 UITableView+TouchableExtension.h #import <UIKit/UIKit.h> @interface UITableView (TouchableExtension) </uikit/uikit.h>…

UIStatusbarの操作でハマった

iOS

今更ですがiOS7で statusbarを編集しようとしたけどもハマるという事案が何度か起きているけど、なんどもわすれてしまっているので備忘録です。 Navigationbarの部分を画像などで代替して実装する際にUIStatusbarを黒背景で表示したい!という場合がありまし…

UINavigationControllerをカスタムしたらUIViewControllerのviewWillAppearが呼ばれなくなった!そのときの

iOS

CustomNavigationControllerみたいものをつくってUINavigationCntrollerをカスタムしてiOSアプリをつくっていたら、起動時にCustomNavigationControllerに紐付いたUIViewControllerの viewWillAppear 等が呼ばれずはまったのでその備忘録を残しておきます。 …

UIViewだけでフラットなボタンをつくろう

iOS

iOSアプリでは、PhotoshopなどでボタンをつくってUIImageViewやUIButtonでボタンを表示することがあると思います。 フラットなボタンだったらわざわざ画像を作る方がめんどい!なんてことがあったので簡単なボタンをUIImageViewもしくはUIViewでつくる方法を…

UIWebViewで動いているアプリをネイティブっぽくしてみた

iOS

かなり既知なことと思いますが、UIWebViewでの挙動をネイティブっぽくするコードの備忘録。 経緯 iOSアプリは審査が1週間あり、ちょっとした変更のためにアップデートするのはかなりコストがかかり大変だったりします。 なので自分のアプリには頻繁に変更を…

UIStatusBarが消えない。

iOS

iPhoneアプリでuistatusbarが消えなくて5分くらいつまったので、備忘録として記事にしておきます。iOSで上に出てる20pxくらいの時間を表示してるあいつです。ゲームとか作ってるとあいつ消したいですよね。あの消したいやつです。 iOS7SDKでの話です。 起動…

Google Analytics SDK 3.0 for iOS の実装について

iOS

アプリを出したら、ダウンロード数とランキングを追って分析しますね。 でも、継続されて利用されるものであれば、一日(月間)あたりの利用者数や滞在時間・利用されるViewの割合などがKPIとなってくると思います。 そこで参考になるのが、Google Analytics…

iOS7で(iOS6っぽく)黒いstatusbarを表示する方法のメモ

iOS

すごい小手先で簡単なことなのに思わずに時間がかかってしまったので、備忘録として。 i0S7の画面でも黒いstatusbarを表示したいときに。 AppDelegateで navigationBar.barTintColorを黒に(navigationbarも黒くなります) Info.plistで Status bar styleをOpa…