面白きことは良きことなり

拙く未熟なiOSエンジニアの備忘録と戯言

NavigationItemのLeftBarButtonItemsにitemを入れるとBackボタンが表示されなくなるやつの対処

経緯 割と当たり前だったりすることでも、知らないことも多々あるので、今回そんな例として今更知った内容のメモとして記載 内容 UINavigationControllerから pushViewController(UIViewController, animated: Bool) で次のViewControllerに遷移するのは珍し…

2018年の目標

(遅くなりましたが)あけましておめでとうございます 年が明けて早半月程経ち、そろそろ今年の目標を決めておかないと思い、本年1 発目のブログを書いている。 2017年の目標の反省 まず去年(2017年)の反省もしていないので、先にそっちから。 目標は3つ立てて…

iOSアプリのiPhone X対応調査

iOSエンジニアは、iOS開発に力入れているところを好む iOSプログラマが転職先を選ぶときに、候補の会社が出してるアプリのiPhone X対応が速かったかどうかなども判断基準になりそうだなと思いました。(フットワーク軽いチームがお好みか、慎重に進めるチー…

CoinCheckで取引を始める前から凍結された話 (追記:2017/12/28)

bitFlyerだけでは足りぬ 仮想通貨がバブルのように高騰してるということで、いっちょ参戦してみようとbitFlyerで取引をしていたのだが、いかんせん対応しているアルトコインの種類が少なくて手を出したいコインを取り扱っていない問題の直面 ならばと調べて…

NSPredicateを使うと@を全角半角区別してくれない

emailのvalidationメソッド 業務中、emailのvalidationメソッドをいじることになって知った話 下記のようなコードでemailのvalidationチェックを正規表現を行なっていたのだが、 @ が全角でも true が返ってきてしまうことが発覚した。(emailの正規表現に関…

Akiba.swift 忘年会のAKIBA枠でLTしてきた

Akiba.swiftとは 岩本町にあるクラスメソッドのオフィスで開催される勉強会です。 classmethod.connpass.com 主催者は、ダンボー田中さんとloveeさん オフィスの広さの関係もあって、最大でも20人ぐらいの小規模勉強会で、名前からも察せるようにアキバ系が…

iPhone Xで出来ないこと2点

iPhone Xを触ってて気づいたこと iPhone Xを私物として購入し、触ったりコードを動かしていて疑問に思ったことを調べた結果、以下の2つが判明 * network indicatorが表示されない * 逆さまの縦持ち(portrait upside down)が存在しない network indicatorが表…

Apple Scriptで"scrapy crawl hoge"をshellで実行しようとして躓いた話

Terminalでは上手くいくのに、AppleScriptではエラー Terminalを起動して、 do shell script "scrapy crawl hoge" を打つと問題なく動作するのに、Apple Scriptで do shell script "scrapy crawl hoge" のようにshellを実行しようとしたところ、 sh: scrapy:…

Xib(Nib)上で設定したfontの種類やサイズが適用されなくて困った話

遭遇した問題 とあるプロジェクトでXib上に配置したUILabelに対して、Xib上からfontの種類とサイズを変更した。 しかし実機上で確認しても、そのfontの変更は適用されていなかった。 原因 何が問題だったかというと、application(_ : launchOptions: ) -> Bo…

退職エントリーと書いて"禊 -misogi-"と読む

転職した 空が青かったからとかそんな理由ではなく、どちらかといえば空が灰色だから転職をした。 ちなみに時系列的には結構過去の話だったりするかもしれないし、未来の話かもしれない。正確に言えるのは、今年の出来事ということ。 ここから先も一部伏せつ…

Visula Studio CodeでPythonのコーディング環境を整える

コーディング環境の導入 Python書いてる人は、VimとかEmacsとかCLI系が結構多いと勝手に思ってるけど、GUI環境で育ち、iOSとかのコーディングもGUI環境ありきでやってきてる身からすると、いささか慣れるまでしんどいし、楽できるなら楽したい。 なので、フ…

Python3とScrapyの導入(おまけにRequestsもね)

Python3のインストール 最近もっぱらスクレイピングとかクローリングが必要なことがあったので、できるようにPythonに手を出し始めた。 macOSならデフォルトでPython2系は入っているが、最新のPython3への対応も進んでるみたいな話題を見ることがあるので、…

リハビリがてらzshのすすめ

書き出し 記事を最後に書いたのがもう2ヶ月前ということもあり、また生活環境も大きく変わったので色々アウトプットする感覚や文字におこす感覚が飛んでいってるので、リハビリしつつ調子を戻そうと思う。 zsh使おう Macでプログラム系やってる人はちょいち…

XcodeのBuild Settingsで設定を忘れるのでメモる

前置き XcodeのBuild Settingsって色々設定があり、オプションをつけることで便利にできたりするのだけど、チェックボックスや選択形式じゃない部分も多くてつい「あの設定つけたいけど、何したらいいんだっけ?」って思うことがある。年かな〜 なので、一々…

iOS 11の写真アプリがアニメーションGIF対応

今更感のアニメーションGIF対応 support.apple.com AppleのiOS 11の変更点が記載されているページに、 iOS 11の写真アプリがアニメーションGIFに対応した記述があります。 iMessagesやTwitter等のSNSで、多く投稿されることもあってか、 対応したのだと思い…

iOSDC JAPAN 2017に参加してきた話

iOSDC JAPAN 2017について 2017/09/15 (Fri) - 17 (Sun)の2.5日間開催(09/15のみ夕方からの半日開催) 去年に続き2回目の開催 iOSエンジニアが集まり、知見を5min/15min/30minで話したり、親睦深める文化祭のようなもの 開催から1週間以上経ち、いろんなとこ…

USB3.0と2.4GHz帯電波の干渉によるネットワーク不安定化とその弊害(主にSwitch)

2.4GHz帯の電波について 2.4GHz帯の電波を使用する主な普及品として下記は割と知られていると思う。 無線LAN (b/g/n) Bluetooth 無線LANに関しては、2.4GHzと5GHzの2種あるが、障害物に強く遠くまで飛ぶという理由や 無線LAN(b/g)が普及したタイミングで導入…

RxSwift+MVVMで出てくるサイトのコードの備忘録

RxSwift+MVVMで上位に引っかかるRealm academy.realm.io RxSwiftとMVVMを勉強しようとした際、上記サイトが上位にくるものの、記載されているコードを今写経してもエラーがでるのみで正常に動かなかった。 調べたり試行錯誤して動くようにできたので記録して…

Carthageでversion指定の書き方を忘れるのでメモ

ふとした時、書き方を忘れ、色々漁って探し直すのが大変なので、ここにメモとして残す。 基本 ~> で書くか == で書くことが多いと思う。 # コメント # ~> 互換性のある最大のversion指定 # ex. 3.0以上かつ4.0未満の最大のversion github "ReactiveX/RxSwift…

Macでのかな変換、カナ変換、英字変換

記事にした経緯 自分も知らなかったし、未だあまり知られて方法もあるので記載 方式名は適当につけているので正式名称ではありません。 また、日本語キーボード基準で記載しているので、英字キーボードの人は適宜読み替えが必要かもしれません、 FunctionKey…

MacApp購入予定リスト(WWDCに備えて)

※一部絶対割引されないものも混じっている。 AppleScriptをSwiftで記述できるアプリ Scriptarian - Scripting Studio for macOS Git管理アプリ www.git-tower.com Diffアプリ www.kaleidoscopeapp.com 鉄板のDesignerアプリ Sketch - Professional Digital D…

RAYZ Plusを購入したので開封と感想(追記05/31)

当初の発売日から2ヶ月経ってやっと発売 RAYZ PlusというiPhone向けのLightningイヤホンが当初の3月末発売から2ヶ月経った今日 に一般発売された。 av.watch.impress.co.jp 海外では、3月末に発売されていたが、国内は諸事情により1ヶ月延期となり・・・ 1ヶ…

UIColorの比較で単純に==や!=してはいけない話(Swift3コード追記)

UIColorの比較の注意点 UIColor同士を比較する際、==や!=で比較することは可能。 しかし、安易にこの比較を行なった場合、意図しない挙動になることもある。 その例が下記となる UIColorの作成時、white値を指定して作成することもできれば、rgba値を指定し…

読みたいまたは購入予定本

モバイルアプリ開発エキスパート養成読本 (Software Design plus)作者: 山戸茂樹,坂田晃一,黒川洋,藤田琢磨,山田航,田坂和暢,熊谷知子,森本利博,坂本和大,小形昌樹,鈴木大貴,志甫侑紀出版社/メーカー: 技術評論社発売日: 2017/04/11メディア: 大型本この商品…

Xcodeでファイル配置を変更した際に出るWarningの対処方法

Missing file (〜 is missing from working copy) gitで該当ファイルをコミットする Dependency Analysis Warning XcodeのUtilities(右カラム)>File inspectorのTarget Membershipからチェックを外す or ProjectのTargets>Build Phases>Copy Bundle Resource…

Library not loadedでCrashした時に行なった対処

Library not loadedでクラッシュとの遭遇 アプリを作っている時は、問題なく実機で実行できていたが、 iTunes ConnectにバイナリのUploadが終わって、メタデータ用のスクリーンショットを撮ろうとシミュレータで実行した際に下記内容のクラッシュに初遭遇し…

FirebaseをPodsを使わず直に取り込む際、DLするVersionに注意

前提 CocoaPodsを使わない Firebaseを直にプロジェクトに取り込む リンクが古い 前提に該当する人は、下記のリンクからzipファイルをDLする人が大半だと思う。 しかし、リンクを見るとFirebaseのバージョンが3.11となっている ここで今最新のFirebaseがいく…

Swiftの文字列にて、Implicitly Unwrapped Optional型の文字列を扱う際に失敗した話

Implicitly Unwrapped Optional型と呼ばれる下記のような記述を行うことで、 この変数を使う時にUnwrapしてくれるというのは大体の人は知っていると思う。 let hoge: String! しかし、Unwrapしない時もあり、そのパターンに嵌ったので今後同じことがないよう…

Frameworkに含まれるXIBやNIBファイルを使用しているのに表示されず"Unknown class HogeClass in Interface Builder file."と出る時の対処方法

3rd Party提供Frameworkに含まれるXIB、NIB 3rd Partyが提供しているFrameworkには、稀にXIBやNIBが含まれており、それを画面上に配置して使うことがある。 この時、Xcodeプロジェクトに取り込み、StoryboardでCustomClassとして適用して使うこともあるだろ…

フリーのApple IDアカウントを使ってXcodeからアプリを実機転送できることで、App ID登録時にエラーを出してしまう可能性の問題

要約 Xcode7からApple IDアカウントがあれば、有料の開発者登録を行わずとも実機にアプリを転送できるようになった その結果App IDを無作為に作成することができ、アカウントが違っても同じApp IDを作成することはできないので、何故かApp IDの登録でエラー…