swift

【swift】SWTableViewCellでボタンとテキストが重なったときの対応メモ

テーブルビューのセルをスワイプしたら削除ボタンが出てくるメールアプリみたいなUI。 これを簡単に実現できるライブラリでSWTableViewCellというのがあった。で、使い方自体はわかりやすくて簡単だったんだけどUITableViewCellの中身がスライドしないで 削…

【swift】uiscrollviewを更新する方法メモ

はじめに 今回やりたかったことは以下 ・UIScrollViewの中にUILabelをもつ ・UILabelのテキストにはAPIから取得した値をセットする ・テキストの文字数が多いのでUIScrollViewの高さをセットしてテキスト全体がみれるようにする今まではUITableViewのヘッダ…

【swift】uitableviewで読込中indicatorを表示する方法メモ

はじめに 今回やりたかったのは、APIから取得した値をテーブルビューにセット。 テーブルビューの1番下までスクロールしたら読込中のクルクルインジゲーターを表示。 というまぁありがちなやつで、やりかた調べたらここにありました。 http://d.hatena.ne.jp…

【swift】iOSでWebViewのjavascriptと連携する方法メモ

はじめに 以下のような問題があってWebViewの使用を検討 ・開発中のアプリのある画面のデザインがけっこう複雑で実装するのに時間かかりそう。 ・HTML、CSSで実装するとそんなでもなさそう。問題点としてはこの画面でのユーザー操作によってアプリの他の画面…

【xcode】「no such module afnetworking」対応

久々にxcode作業 xcodeのアップデートしたらバージョン8.2になってた。 で、swiftのバージョンも3.0.2にで、cocoapodsでAFNetworkingをインストールして以下を書こうとすると「no such module afnetworking」という経緯でした import AFNetworking漠然とxcod…

【swift】uitextviewで文字数を制限したテキストコピーを実装

はじめに uitextviewにコンテンツを表示。コンテンツの内容はコピー可能だけど全文を一括ではコピーできないようにしたい ということでした実装手順としては ・uitextviewのUIMenuControllerを無効にしてコピーできなくする ・文字数制限してコピー可能なUIM…

【swift】uitextviewの選択範囲の文字列を取得する方法

今回やりたかったことはタイトルのとおりですが、 uitextviewに表示しているテキスト中でユーザーが選択状態としている部分の文字列を取得するということでしたswift let location = textView.selectedRange.location let length = textView.selectedRange.l…

【swift】RealmSwiftとObjectMapperでローカルDBを使う方法メモ

はじめに 今回作りたかったものは辞書アプリみたいなイメージで 書籍のカテゴリーが一覧表示されていて選択すると紐づく書籍がリスト表示されるだけやりたかったことは以下 ・辞書データはサーバーに保存 ・できるだけオフラインでも使えるようにしたいで、…

【swift】エラーメモ clang: error: linker command failed with exit code 1 (use -v to see invocation)

ついさっきまで同じビルドできていたのに突然このエラーが出る場合があります。 特に開発始めたばかりのときはビルドが通らないだけで一苦労です自分の場合は、「command + shift + k」で1度クリーンしてから再度ビルドすると大抵解決していると思います cla…

【swift】fabricのcrashlyticsでクラッシュレポートが送信されなかった時の対応メモ

はじめに サンプルアプリを作って、マニュアルの手順通りに導入すると上手くいくのに携わっていた案件のアプリに入れた際になぜか上手くいかなかった。 そのときの対応方法をメモ 実装 AppDelegate.swift import Fabric import TwitterKit import Crashlytic…

【ios】アプリ開発〜リリースまでのまとめ

はじめに アプリ開発してお客さんに確認していただいて、アップルに審査してもらうまでにやっとたどり着いたので備忘録としてメモイメージとしてはこんな感じで、webアプリとか受託開発するとよくある形だと思われます 環境 アプリを確認する人 開発 開発者 …

Error ITMS -90362"Invalid info.plist valueエラー!!

はじめに やっとこざアプリの審査作業を行っているのですが、xcodeよりアプリをアップロードする際に今度は以下のエラーが発生しました ERROR ITMS-90362: "Invalid Info.plist value. The value for the key 'MinimumOSVersion' in bundle *****.app/Framew…

【ios】Universal Linksを実装する - 実装方法

はじめに 前回書いた概要の続きです。手順としては以下 Apple Developer ・「Identifiers」の「App IDs」より「Associated Domains」がEnabledになっていることを確認(または設定) その際に、アプリの「ID」と「Prefix」もあとで使うのでメモしておく※ここ…

【ios】Universal Linksを実装する - 概要とか

はじめに 今回やりたかったことは、あるurlへアクセスした際に ・未インストールならAppStoreへ誘導 ・インストール済であればアプリを起動(起動時の画面も指定したい)ios8以下では、ココとかの記事の通り、 アプリにカスタムurlスキームを設定して、html…

【swift】カスタムUIView上のボタンが押せなくてハマったときのメモ

はじめに 久々にこんなにハマりました、、、 共通で使い回すために作るカスタムUIVIew上のボタンを押してもウンともスンともいわなかったことでしたコードは以下のような感じで、なんてことはなくボタンを持ってるだけのUIViewをaddSubViewして、見た目的に…

【swift】api通信処理を共通化/エラー処理もちゃんとやる

はじめに 以前、こちらで同じようなことを書いたのですが。 そのときはまだswiftやりたてというのとエラー処理とかちゃんと考慮できてなかったので今回もう1度ちゃんとまとめてみようと思いました実装したい機能としては以下 >サーバーからのレスポンス arr…

【swift】AppDelegateのopenURLが呼ばれなかったときの対応メモ

はじめに 「example://」のような形でアプリを起動したときにAppDelegateのopenURLメソッドが呼ばれませんでした。 ちなみに、アプリを起動した状態でブラウザから起動すると期待通り呼ばれました。原因としては、AppDelegateのdidFinishLaunchingWithOption…

【swift】AFNetworkingでタイムアウト処理メモ

やりたかったこと AFNetworkingを使っていて、タイムアウトまでの時間を計ってみるとちょうど1分間でした。 1分間待つのはちょっと長いかなと思って、この時間を設定する方法を調べてみましたAFNetworkingの中をtimeoutでgrepしてみると、requestSerializer…

【swift】シュミレータービルドの方法メモ

はじめに Facebookアプリに申請を出す際にアプリの提出が必要だとのこと。 が、現時点でアプリはリリース前でアプリを実機で動作確認する際にはUDIDをプロビジョンファイルに含めて、デプロイゲートよりインストールしてもらう形で進めてきました。で、これ…

【swift】UIBarButtonItemを右寄せする方法メモ

はじめに 今回やりたかったのは、こんな感じ。 UIDatePickerの上にUIToolbarをおいて、UIToolbarの中にUIBarButtonItem(決定ボタン)をおいて右寄せにする 実装 UIBarButtonItemのbarButtonSystemItemをUIBarButtonSystemItem.FlexibleSpaceに設定して これ…

【swift】UITableViewをタップされたらキーボードを隠す(けど画面遷移はしない)方法メモ

はじめに タイトルがわかりずらいんですけど、やりたかったこととしては以下画面としては、UISearchBarがあってUITableViewがあって、UISearchBarを編集中に画面をタップしたらキーボードを閉じる。 けど、素直に実装するとUITableViewのセルがタップされた…

【swift】ios7で画面上下に黒い帯が出たときの対応

はじめに 検索するといくつか出てきました。次回のために端的に手順だけメモ 必要なもの 以下、2ファイルを準備 640×960 Default@2x.png(iPhone4/4s) 640×1136 Default-568h@2x.png(iPhone5/5s)今回はなかったので適当に真っ白な画像を準備 // imageMagic…

【swift】複数のUITextField、UITextViewがキーボードで隠れないにする1番簡単な方法

はじめに まぁ、1番簡単というのは個人的にはなのですが、、、以前にもこちらで同じような内容を書いたんですけど 今回のやり方のほうが個人的には汎用的であって、今後、このやり方でやるだろうなとういことでメモしておく 実装 今回は、1画面にUITextField…

【xcode】xcode7でios7シュミレータを使う方法メモ

はじめに xcode6からxcode7にした際にios7のシュミレータが消えちゃって一苦労しました。 で、検索してみると以下に答えがのってました。 http://stackoverflow.com/questions/31056634/how-can-i-run-the-ios-7-1-simulator-in-xcode-7-0-beta-2 登録中デバ…

【swift】ios9でUITableViewCellの罫線を左端まで引っ張る方法メモ

はじめに UITableViewのデフォルトだと、セル間の罫線が画面左から少し離れたところからスタートしているんですね。 今回やりたかったことはこれを画面の左端からスタートさせることです 実装 で、検索するとこの辺に答えっぽいのがあったのですが、自分のア…

【swift】UITabBarControllerにスライドメニューを追加する方法

はじめに スライドメニューで検索すると色々出てきたのですが、今回は SlideMenuControllerSwiftというライブラリを使わせていただきました。紹介されている使い方をそのままでした。 Podfileに以下を追加して、podinstallするとインストール完了ですPodfile…

【swift】配列を結合する方法メモ

はじめに 今回やりたかったのは以下のようなこと // 2つの配列 var array = ["test1", "test2"] var array2 = ["test3", "test4"] // 1つの配列に結合したい var array3 = ["test1", "test2", "test3", "test4"] 実装方法 // 2つの配列 let array = ["test1"…

【swift】xcode7.1へアップグレートした際のAdMob SDKの対応メモ

はじめに xcode6から7にバージョンアップするときほど、問題は発生しないと思って軽い気持ちでアップグレートしました。 予想通り、ほとんどそのままいけたんですけど、Googleの広告SDKのAdMob SDKの箇所でエラーが出てて、ちょっと詰まったので対応したとき…

【swift】画面遷移をJLRoutesを使ってurlルーティングで管理 by web感覚

はじめに webのフレームワークだと、アクセスされたurlを解析して対象のコントローラを呼び出すっていうのが一般的な処理の流れです。 iosアプリでも同じような形で実装できればコードの見通しがよくなると思って調べてみたのが今回の経緯でした。で、調べて…

【swift】文字列(String型)の末尾の文字を削除する方法メモ

地味にはまったので自分用にメモ // URLの末尾の「?」を削除したい var url = "http://example.com?id=1?" // NSMutableStringにキャストして文字切り出し var _url :NSMutableString = NSMutableString(string: url) _url.deleteCharactersInRange(NSRange(…