しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

2016-09-01から1ヶ月間の記事一覧

【iOS10】UISearchBarのUITextFieldを取得する

iOS

UISearchBarのUITextFieldを取得する方法です。 subviewから無理やり取っているので、今後取れなくなる可能性もあるので注意が必要です。 let searchBar = UISearchBar() let textField = searchBar.subviews.first?.subviews.flatMap { $0 as? UITextField …

Swift3.0でインスタンスのクラス名を取得する

iOS

2017/10: Swift4.0でも動作確認済 Swift3.0でクラス名の取得方法が少し変わっていたのでメモ。 dynamicTypeでなくtypeという大域関数を使うようになりました。 // Swift2.0 let view = UIView() NSStringFromClass(view.dynamicType) // Swift3.0 let view =…

Apple Pay と In-App Purchase の使い分け方を調べてみた

iOS

最近Suicaが使えると話題のApple Payについてです。 Apple Payについて最近調べていたところ、アプリ内の課金にも使える事がわかりました。 しかしアプリ内課金はIn App purchaseが既にあるので、その辺りの使い分けをどうしたらいいかを調べてみました。 Ap…

UITableViewCellEditingStyleでnoneを選んだ時にできる空白スペースを削除する

iOS

UITableViewCellで、削除ボタンを出さなくした時のスペースを消す方法です。 内容 UITableViewでは以下のようなメソッドを実装する事で編集中に削除ボタンを出さない事ができます。 override func tableView(_ tableView: UITableView, editingStyleForRowAt…

Xcodeアップデートでmach-o string pool extends beyond end of file fileエラーが出た時の対処法

iOS

下コマンドでDerivedDataの中身を削除する事で解決しました。 rm -rf ~/Library/Developer/Xcode/DerivedData/*

【In-App Purchase】iOSでInvalid Product Identifierが出た時の対処法

iOS

アプリ内課金でアイテム情報が取得できなかった時の対処法です。 今回のケースでは、iTunesconnectの「契約/税金/口座情報」を入力する事で解決しました。 入力後30分くらい経ったらプロダクト情報が取れるようになりました。

シンプルなRESTClient、insomniaを試してみる

insomniaというRESTClientを試してみました。 insomnia.rest アプリはこちらのページからダウンロードしました。 insomnia.rest 起動後画面は下のようなものです。 このようにURL指定でリクエストを送る事ができます。 ベーシック認証・ヘッダー・パラメータ…

【Swift】呼び出し元のメソッド名を取得する

iOS

メソッドの呼び出し元を取得する方法を調べました。 良くある方法はスタックトレースを見る方法です。 class MyClass { func originMethod() { targetMethod() } func targetMethod() { let symbols = NSThread.callStackSymbols() print(symbols.count >= 2…