ios

cordova carthage対応のライブラリを使ったプラグイン開発

Carthageを使ったライブラリを使用して開発されたCordovaプラグインをいくつか見つけた。が、導入方法はプラグインインストール後や`platform add ios`した後にXcodeからCarthageのお決まりの作業を行わなくてはならないようだった。問題点は以下 ・手間がか…

swift4 アプリのバージョン番号とビルド番号取得

// バージョン番号 Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion") // ビルド番号 Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString")参考 https://qiita.com/arthur87/items/802d17387ae46fb44fc2

xcode カスタムURLスキームを本番と開発アプリで切替える

今回やりたかったことはカスタムURLスキームの設定。ブラウザから「myapp://」等のリンクをクリックしたときにアプリを起動させたいとかの場合に設定するものです。 アプリ開発していて、開発と本番アプリで別の名前で設定したいと思いやり方を調べたのでメ…

Swift LUExpandableTableViewを使って折りたたみ可能なUITableViewを実装

こんな感じのありがちなUI。ライブラリを使わずに自前で実装する方法もけっこう書いていただいている人がいて実装することはできたのだが、テーブルのレコード数が増えると開閉したときのスクロール位置がガタガタ。自分の実装方法に問題があるかもしれない…

Swift 一定以上スクロールしたらタブの位置を固定する(SwipeMenuViewControllerを使う)

やりたいことはこちらのページに書かれていたようなこと https://techblog.zozo.com/entry/scroll_tab_pagehttps://github.com/yysskk/SwipeMenuViewController SwipeMenuViewControllerというライブラリを使って試してみたViewController.swift import UIKi…

Swift UIViewを再描画

autolayout使わない方法メモ と言ってもframeをセットしなおしてるだけ import UIKit class ViewController: UIViewController { var wrapper: Wrapper! class Wrapper: UIView { var message = UILabel() required init?(coder aDecoder: NSCoder) { super.…

Swift UITableViewのセクションヘッダーをカスタマイズする方法メモ

やることは以下 ・カスタムUIViewの実装 ・viewForHeaderInSectionとheightForHeaderInSectionメソッドの定義viewForHeaderInSectionはカスタムViewを返す heightForHeaderInSectionはカスタムViewの高さを返す テーブルセルのカスタマイズと考え方は同じ カ…

Swift 動画からキャプチャ画像を抽出する

動画ファイルから1秒単位でキャプチャ画像を生成するサンプルをメモしておく import UIKit import AVKit class ViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate { var picker = UIImagePickerControlle…

Swift Dateで日付のみのリスト作成

大した話じゃないけどDateFormatterは入力と出力でそれぞれ用意すると考えるとなんとなくわかりやすいと思った start = "2018-01-01" end = "2018-01-31" // 入力文字列のフォーマット var inputFormatter = DateFormatter() inputFormatter.dateFormat = "y…

Swift Alamofire + Codableでapiリクエストでの最低限必要そうな処理まとめ

はじめに アプリ開発でWebAPIにリクエストしてレスポンスを画面に表示したりデータを更新したりありがちな処理をまとめておく。やりたいことは主に以下 ・APIへリクエスト(Get、Post、Patch、Delete) ・APIのレスポンスからCodableなクラスのインスタンス…

iOS12でLine SDK Loginエラー

ios

https://developers.line.me/ja/docs/ios-sdk/ LINEが提供しているこちらのSDKを使ってLINEログインを自分のアプリに組み込んでいるのだが、iOS12でSDKでログインに失敗するケースが多発。LINEブログやその他のLINE製アプリでも確認したがエラーになることが…

Swift UITextField textFieldShouldReturnが呼ばれない

UITextFieldDelegateもちゃんと実装したのになぜか呼ばれなくてハマった誤 func textFieldShouldReturn(textField: UITextField) -> Bool { return true }正 func textFieldShouldReturn(_ textField: UITextField) -> Bool { return true }昔のソース貼り付…

Swift TagListViewでタグ入力UI実装

はじめに 今回作りたかったのはこんなありがちなUIhttps://github.com/ElaWorkshop/TagListView このライブラリを使ったら簡単に実装できた。使い方簡単にメモしておくハマりポイントはあまりなかったが、タグを追加していったときに高さの取得方法がわから…

Swift codableなclass(object)のプロパティに変数で動的にアクセスする

あまり応用シーンはなさそうだけど今回やりたかったことは user["id"]、user["name"]みたいなかんじでプロパティにアクセスしたかった。やりたかった理由はObjectから特定のプロパティを表示する画面を作りたかった。こんなクラスがあってプロパティがたくさ…

Swift LINEぽいメッセージアプリの入力UIをつくったのでメモ

はじめに かなり前にこちらでメッセージを表示する部分の吹き出しの作り方をメモした。 http://kimagureneet.hatenablog.com/entry/2015/09/19/005407今回はメッセージ入力部分のUIの作り込みの方法をメモ。こんな感じのものを作りたかった。 やりたいことは…

Swift ImageSlideshowのPagerの色、位置を変更する

https://github.com/zvonicek/ImageSlideshow こちらのライブラリの話デフォルトだと画像とページャーガ重なっていて見づらいので、色を変えて画像の下にくるようにする var slideShow = ImageSlideshow() let pager = UIPageControl() pager.pageIndicatorT…

Swift UITableViewですぐ忘れる細かいことまとめておく

セルの罫線を消す tableView.separatorStyle = .noneセルの罫線の隙間をなくす UITableView.appearance().separatorInset = UIEdgeInsets.zero空のセルは表示しない tableView.tableFooterView = UIView(frame: .zero)セルをタップした時の色がかわらないよ…

ionic(cordova) CircleCI2とFastlaneでiOSアプリをデプロイゲートにアップロードする手順まとめ

はじめに 今回やりたかったことは ・ionicで開発したiOSアプリをCircleCI2上でAdHoc版ビルド ・ビルドしたアプリをデプロイゲートへアップロード ・Fastlane Matchは使わず手元にある証明書とプロビジョニングプロファイルで行う ビルドとアップロードはFast…

Fastlaneにてcordova(ionic)プロジェクトのiOSアプリをDeploygateにアップロードする手順

今回やりたいことは以下 ・cordova(ionic)プロジェクトで作成したアプリをビルド ・ビルドしたアプリをデプロイゲートへアップロード とりあえずはデプロイゲートまでアップするのが目標 fastlaneインストール fastlaneをインストール $ sudo gem install fa…

iOS iTunesConnectに継続課金の自動更新登録(Auto-Renewable Subscription)が表示されない原因

ios

https://terakoya.site/ios_dic/ios-dic-in-app-purchese/ こちらを参考にiTunes Connectで設定を行なうところでつまづいた。App内課金コンテンツを追加するところで以下の3種類しか選択肢に出てこず、自動更新登録が表示されない。。 ・消耗型 ・非消耗型 …

【iOS】AdHoc版アプリが起動しなくなったときに調べたこと

前提としてはずっとAdHoc版でデプロイゲートから配布していたアプリが突然起動しなくなったとのこと。 ipaの有効期限を見ても期限内だったのでちょっととまどったがその時に調べたことをメモしておく。AdHoc版のipaからembedded.mobileprovisionを確認発生日…

SNSでAPNS(iOSプッシュ通知)使う場合のJSONひな形

アプリ側だけawsのコンソールからチャチャッと動作確認しようと思ったらけっこうハマったのでひな形メモしておく。このエラーがなかなか消えず。。 Invalid parameter: Message Reason: Invalid notification for protocol APNS_SANDBOX: Notification is ma…

iOSアプリ申請時に最低限必要な画像

前に用意したことあったけど全然覚えてないしよくわからなかったので次回用に最低限準備しないとならない画像をメモ。 スプラッシュ画像 3125x5571を1枚用意。これ1枚用意して、LaunchScreen.storyboardのViewControllerにUIImageViewを貼り付けてAutolayout…

【xcode】AppIconにiPadのエリアがなかった時の対応

またたいした話じゃないけど、アプリの開発をひととおり行ってアプリのアイコンを設定しようとしたらiPad用のエリアがなかった。iPhoneのみ iPhone、iPad両方あり 理由はプロジェクトを作った時にDevicesをiPhoneを選択して作ったから。 あとからUniversalに…

【swift】UILabelの高さを計算して動的に変更(調整)する

よくやってるつもりだったけど意外と整理できていなかったので整理 var myLabel = UILabel(); // 最大行数を指定(0は無制限) myLabel.numberOfLines = 0; // 表示するテキストをセット myLabel.text = "テキスト・・・"; // セットした文字からUILabelの幅と…

【swift】iosで画面の回転を検知してUITableViewを再描画する

はじめに 今回やりたかったのは画面一杯にUITableViewをセット。 端末の向きが変更されたら画面サイズに合わせてUITableViewの幅と高さを更新。ということなにも対応しないと縦向きから横向きにしたときにテーブルの幅が半分くらいになってしまうので対応が…

【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で実装するとそんなでもなさそう。問題点としてはこの画面でのユーザー操作によってアプリの他の画面…