objective-c

【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】AppDelegateのopenURLが呼ばれなかったときの対応メモ

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

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

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

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

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

【swift】ログイン・ログアウト処理

はじめに 今回やりたかったのは、ありがちなログイン・ログアウト処理。 初回起動時にログイン画面を表示。1度ログイン後は次回起動時にもログイン画面は表示しないということ。方法としてはuserDefaultsという端末のストレージにログイン状態を保存しておく…

【swift】画面に非表示でpushViewControllerする方法

はじめに やりたかったことを文字にすると非常にわかりずらいのですが、以下のことになります1. 画面Aを表示 2. 画面B(入力画面)へ遷移 3. 2.からの戻るボタンで画面C(一覧画面)へ遷移わかりずらいですが、表示してない画面に戻るということになります …

【swift】UITextViewでリアルタイム文字数チェック

はじめに やりたかったのはタイトルの通り。javascriptでやるような感覚でいけました ひな型的に自分用にメモしておきます 実装 class SampleViewController: UIViewController, UITextFieldDelegate { var textField: UITextFiled = UITextField() var labe…

【swift】popViewControllerAnimatedで複数前の画面に戻る方法メモ

はじめに 今回やりたかったことは、uinavigationcontrollerで1つ前の画面でなくて複数前の画面に戻ることでした。 で、設計にも関わるのですが、その画面に戻る前にプロパティなどを設定してからもどるということでした。 実装 // 1つ前のviewContorollerな…

【swift】画面遷移でパラメータを引き継ぐ方法

やりたかったこと webというか(php)でいえば、$_GET、$_POSTでパラメータで画面間でパラメータを引き回す方法をメモ。 実装 たいていの画面で画面遷移はあるので、BaseViewControllerみたいのをつくって共通の関数を用意しておくと楽だとおもいましたAppDele…

【swift】kvoパターンを使うためにmodelクラスをつくる

はじめに 今回やりたかったのはapiからデータを取得 そのデータをアプリ内で使いまわしつつデータの更新があればapiも叩いてサーバサイドにも反映ちょっとわかりずらいけどやりたいことはこんな感じです 作りたい画面 一覧画面 ・apiからデータを取得してテ…

【swift】アルバムから選択した画像をリサイズしてサーバーにアップロードする

はじめに 今回作ってみたサンプルのイメージはこんなかんじです。 使ったライブラリやキーワードとしては以下です ・Photos(アルバムへのアクセス) ・CoreImage(画像のリサイズ) ・Net(ファイルアップロードでMulti-Partリクエスト) ・SVProgressHUD(…

【swift】UITableViewでUIMenuControllerをカスタマイズして使う方法

はじめに 今回やりたかったのはLINEみたいなかんじでセルを長押しすると削除とか編集とかのメニューをだしたかったことです。で、デフォルトで「copy」とか「paste」とかの項目があるのですが、これらを削除してカスタマイズしたメニューだけ表示するという…

【swift】ボタンをカスタマイズする方法メモ

はじめに 今回やりたかったのは、大きめのボタンで文字列が2行のもの。 まぁ1回やってしまえばどうってことないんですど次回やるときのためにメモちょっとセンスないですが、やりたいことはこんな感じです 実装 iPhoneアプリでボタンなどの部品をカスタマイ…

【swift】uitabbarにポップオーバーするメニューを表示する方法

はじめに また、ちょっと需要なさそうな内容なのですがやりたかったことは以下のような形です。uitabbarのタブをクリックすると画面遷移するのではなくて、ポップオーバーでメニューを表示するということ 実装方法 ポイントは 1. UITabBarControllerDelegate…

【swift】実行中のviewController名を取得する方法メモ

また素人丸出しのメモです。が、やりかったこととしてはアプリの画面が増えてきてどの画面がどのファイルかわからなくなってきた、、、 根本的にちゃんと命名規則やら整理しろってことになるのかもしれませんが、、、BaseViewController.swift class BaseVie…

【swift】ページ内リンクを実装する方法

はじめに やりたかったことはHTMLで言えばページ内リンクで、さらにアニメーションのつき(スクロールしながら)で行うことでした僕の場合、縦長のページは必ずと言っていいほどUITableViewを使っているので、これを使っての実装方法メモになります 実装方法 V…

【swift】addSubviewしたviewがずれたときの対処メモ

はじめに 結論からいうと回避策はわかったので対処はしたのですが、原因がわかっていません、、、現象としては、viewDidLoadでaddSubviewしたviewが縦にずれる(画面からはみでる) しかし、pushViewControllerで別ページへ遷移後に戻ってくるとずれることなく…

swiftのUISearchBarでキャンセルボタンの表示・非表示を切り替える方法

はじめに UISearchBarは検索フォーム用のテキストフィールドで、キーボードも検索用のものが表示されるのでとても便利だなぁと思います。 今回はすこしだけいじって、以下を実装しました ・通常ではキャンセルボタンを非表示 ・編集中のみキャンセルボタンを…

swiftの画面遷移で画面を上から下に表示する方法

はじめに やりたかったことは画面上部のメニューバーに設定ボタンをおいてそれをタップすると、画面上からメニューが落ちてくるような動きでした。単純に、presentViewControllerを呼び出す前にviewController.modalTransitionStyleに適当なスタイルを設定す…

swiftでuitextviewに完了ボタンを設置してキーボードを閉じる方法

はじめに uitextfieldでは基本的に改行がないので、改行を押されたらキーボードを閉じる処理を実装すればよかったのですが、uitextviewの場合は改行も当然入力したいと思われるので同じ方法が使えませんでした。で、今回はキーボードの上に別途に完了ボタン…

swiftでUitextFieldがキーボードで隠れないようにする方法

はじめに また、webだと考えられないようなところでつっかかたのでそのときの対応をメモします。 iPhoneアプリ開発したことがある人ならみんな経験しているようなことなのかもしれませんが、初めてのiPhoneアプリ開発ではハマる部分なのではないかと思います…

swiftでファイルアップロードする方法メモ

はじめに 簡単にできるかと思ってたけどけっこう時間かかったので実装方法をメモしておきます。api連携の処理は全てAlamofireというライブラリを使って実装する予定だったのですが、これを使ってファイルアップロードの仕方がわからなかったので別の方法を検…

swiftでcheckboxやradiobuttonを実装するライブラリ

はじめに swift(objective-c)でのiosアプリ開発していて、標準のuikitにはhtmlでのチェックボックスやラジオボタンなどに相当する部品がありませんでした。で、まぁ探していたらCTCheckboxというちょうどいい感じのライブラリがあったので使い方メモしておき…

webプログラマがiosアプリ開発を始めて学んだことまとめ

はじめに 今までwebアプリの開発をほぼphpでおこなってきたのですが、ここ2ヶ月iosアプリ開発をして学んだことをまとめます。 社内に経験者がいないため基本独学で進めて、たまに知人に質問というか相談をしてるかんじです。 とくに最初の1ケ月はけっこうと…

UiTableViewCellの特定のセルだけ更新する方法

はじめに やりたかったことは、画面上のUITableViewの特定のセルをクリックされたら、そのセルの中身だけ更新するということでした。 画面イメージは以下になります※クリック前 ※クリック後 今回のサンプルでは高さと背景色を変えてみました 実装方法 class …

ツールバーでボタンを等間隔に配置する方法

やりたいこと ツールバーをつくる方法です。 UINvigatioNavigationvarを使っていれば、デフォでナビゲーションバーが付いていたかと思いますが、今回はそれではなく自分で作って配置する方法です。 実装 左はし、中央、右はしに配置します class ViewControl…