iOS アプリの言語設定をコードで変える

調べてる途中で必要なくなって中途半端な感じだけど備忘録的な。

システムの言語設定とかが UserDefaults に渡されて、NSLocalizedString とかはそれを見て返す言語を変えてるらしかった。 以下のように言語とかロケール系の設定を上書きすると、次回起動時から上書きした設定が使用される。 3つ上書きしてるけど、最低限どれを変えれば良いのかとかは調べてない。 userDefaults.synchronize() した後に NSLocalizedString 読んでも上書き前のものが返ってきてた。

let userDefaults = UserDefaults.standard
let identifier = "ja-JP"
userDefaults.set([identifier], forKey: "AppleLanguages")
userDefaults.set([identifier], forKey: "NSLanguages")
userDefaults.set(identifier, forKey: "AppleLocale")
userDefaults.synchronize()

参考

GitHub - trailblazr/LocaleOverrider: Demonstrator how to override the apps locale in case you need to provide fast Locale switching.

2017年振り返り

今年の抱負は無事達成しなかった。

今年は転職したくらいしかこれと言ったイベントが無かった気がする。

あと筋トレを習慣付けた。

そろそろ健康に気をつけたい気がする。

今年お世話になった方々や仲良くしてくださった方々ありがとうございました。来年もよろしければよろしくお願いします。

2017年買ってよかったものまとめ

まだ買って1ヶ月とかそのくらいなんだけど、良かった。

歯に当ててスーッてするだけで手で磨くよりきれいになる。

ここ数年は自宅で仕事してて、出勤してるときは出かける前に歯磨きしてたけど、自宅だと歯磨きするタイミングを固定するのが難しくて、だいぶサボってしまって、今まで虫歯なったことなかったのに虫歯になった。

幸い(?)親知らずだけちょっと痛いなーくらいで、抜いて済んだので歯を大切にする。

5000円しないのでもっと早く買えばよかったって思った。

めっちゃ良くて、街をドライブしてるだけで楽しい。

前作はお前本当にハッカーなんか??みたいな感じだったけど、今作はドローンとかラジコンとかを上手いこと使いながらクリアしていく感じで楽しかった。ラジコンとドローンから爆弾落とせるやつ取ると一気に難易度下がっちゃうからデッドセック気分を味わいたい人は取らないほうがいいかも。

あと前作は、パトカーの前でスピード出したり逆走してるだけで追われる上に、カーチェイスの難易度が高すぎてグエーって感じだったけど、今作は銃出したり轢いたりとかしなければ見逃してくれる。

主人公(マーカス)と仲間(レンチ)の掛け合いがオタクの会話って感じで面白い。DLC もまだ1個しかやってないけど面白い。

買ったの去年だけど去年のに書いてなかったので2017年買ってよかったものになった。

室内用ゴミ袋 10L 半透明 25枚入 Y18C

室内用ゴミ袋 10L 半透明 25枚入 Y18C

スーパーとかコンビニの袋使ってたんだけど、惣菜とかで済ますこと多くなると枯渇するので買った。

ゴミ捨て放題になって良い。

頭痛首こり肩こり腰痛に良い。

首のヘルニアになって、寒くなってくると辛い日が増えるのでこれを肩に貼るだけでだいぶ楽になる。

防寒としても良くて、出かける前に腰に1枚貼っとくと、そんなに着込まなくても暑いくらいになって良い。

簡単に言ってしまうと軽めのストレッチ本なんだけど、全身まんべんなくストレッチするポーズ(?)が書かれてて良かった。

大量にあって難しいので、全身ストレッチみたいなやつと、首とか肩のやつをやってる。

効果があるのかは分からないけど、効果あるような気がするからやってる。

プリズナー・トレーニング 圧倒的な強さを手に入れる究極の自重筋トレ

プリズナー・トレーニング 圧倒的な強さを手に入れる究極の自重筋トレ

獄中で囚人が行うトレーニングについて書いた本。

プリズナー・トレーニング 圧倒的な強さを手に入れる究極の自重筋トレ 読んだ - 銀の人のメモ帳

前にブログに書いた。

めちゃくちゃ簡単なところから始まるので、運動不足な状態で始めるのに良かった。あと自重筋トレの本なので、出不精に最適。

めちゃくちゃ簡単がどのくらい簡単かというと、壁の前に立って、壁に手をついて、その状態で腕立てやるところから始まる。

今のところ見た目で分かるほどの変化は出てないけど、2ヶ月くらい続けられてるんで引き続きやっていく。

家で懸垂する場所が無いから買った。

頑丈な突っ張り棒って感じのやつなんだけど、ぶら下がってもびくともしなくて凄い。

囚人筋トレの本の表紙が刃牙の作者で、今までネタっぽい画像は知ってたけど読んだことなかったら読んだらめちゃくちゃ面白くて一気に読んだ。

ネタっぽい画像をTwitterで時々見かけてたので、楽しんでる人もネタとして楽しんでるのかと思ってたんだけど、ネタじゃなく面白いというか、ネタとして見かける画像も通しで読むと普通のコマで刃牙おもしろ〜〜〜〜〜ってなった。

第四部が連載中で、第三部のラストがだいぶ良かった。

強くなりてえ……ってなった。

あと、囚人筋トレの本の後に刃牙読んだから、ビスケット・オリバ出てきたとき囚人筋トレ本の表紙じゃん!ってなった。


去年書いたらインスタントコーヒーとか知り合いが買ってたりしたので今年も書いてみた。

2016年買ってよかったものまとめ - 銀の人のメモ帳

「既存のプロジェクトを XcodeGen に移行する」という文章をQiitaに投稿した

qiita.com

XcodeGen 少し前に知って良さそうって思ったんだけど、そのときはドキュメントが充実していなかったのかドキュメントの存在を見落としていたのか分からないけど導入見送って、最近になってまた少し話題になってたから見てみたらドキュメントしっかり存在してたので移行した。

XcodeGen 話題にはなっていたけど、何がいいとか、リリースされてるアプリの設定ファイルとかはあるものの、じゃあ実際に使い始めるぞ!って感じになるような日本語の情報が皆無だったので書いた。

移行するぞ!って作業し始めると、本当に一通りの設定を yaml に書けたのか不安になり、生成されるプロジェクトとの差分見ても diff がやばくて分からんしで、うむ〜って感じだった。

xcconfig-extractor というツールを教えてもらったらシュッと移行終わった。

qiita.com

xcconfig に大体の設定を書いておけば XcodeGen 捨てるぞ!ってなったときに捨てるコスト下がるし、XcodeGen 使わない場合も設定変えたときの diff が見やすくなって良いなって思った。

近況

転職した。

毎年転職活動してたから転職しまくってる or 一生転職活動してると思われてそうだけど、4年勤めてた。

前職は iOS→cocos2d-x→rails→reactjs みたいな感じでやること変わって、現職は iOS やる。

昨日が初出勤だったんだけど、貸与 PC の配送遅れてずっと実践ドメイン駆動設計読んでた。有給消化で17連休作って、労働無理な身体になっていたのでショック死せずに済んだ。

実践ドメイン駆動設計は、まだ1章の途中なんだけど、今のところ叙情的な感じがしなくて読む気になるので読み終わりたい。

実践ドメイン駆動設計 (Object Oriented SELECTION)

実践ドメイン駆動設計 (Object Oriented SELECTION)

17連休は、マジでゲームしかしてなかった。旅行とか行きたい気はしたんだけど収入貯金が全然無くて辞めて次のまで間があくし、年末年始の色々やらなんやらで厳しそうだったので引きこもってた。次は貯金しっかり作ってから辞めたい。

17連休過ごしてたら伯父になってた。先日、会いに行ったんだけど小さかった。

前職の1日の所定労働時間7時間で、現職8時間なので疲れそう。所定労働時間が4時間の世界になって欲しい。0時間でもいい。

転職祝いください!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

https://www.amazon.co.jp/registry/wishlist/1GRLBQ0JXTXHW

以上です。

STEINS;GATE 0 全ルート感想

昨日の深夜に全ルートやりおえて、寝る前にサクッと書いて寝ようとしたんだけど足りなかったので書く。

やる予定の人は読むのを止めてシュタゲゼロやろう。

STEINS;GATE 0

STEINS;GATE 0

続きを読む

STEINS;GATE 0 クリアした

PS4 持ってないのに初回特典入りのやつを予約して買ったのに手を付けていなかったシュタゲゼロを全ルートクリアした。

めちゃくちゃ良かった。

トゥルーエンドにも触れているのでやる予定の人は読むのを止めてシュタゲゼロやろう。

STEINS;GATE 0

STEINS;GATE 0

続きを読む