【水曜日】アプリケーションのローカライズのつづきとARC
睡眠時間5.5時間。
今までは日本語版と英語版のStoryboardが独立しており面倒だったが、基本となるStoryboardファイルを定義して他の言語はStoryboardの文字の部分だけをLocalizable.stringsで定義する方法。
もちろん意味わかってません。
▼プロジェクトの設定画面のここにチェックを入れる
▼そうするとStoryboardの(English)が(Base)に変わる
▼MainStoryboard.storyboardのファイルインスペクタのLocalizationのJapaneseをLocalizable Stringsに変更する
▼いまこんなかんじ
上記のやり方に沿って新しく追加したら反映されなかった… およよ
(放課後に先生に聞いたら、アプリを一度削除してから入れ直すと反映されるとのことで、やってみたらできた。そういえば授業中にそんなことを聞いた気がする。上の空ですいません)
次に、ARCの勉強。
ARCとは、コンパイル時にObjective-Cオブジェクトのリファレンスカウンタ操作(retain/release/autorelease/dealloc)を自動挿入する機能だそうです。
ちんぷんかんぷんです。
プロジェクトを作ったらautoreleaseをするなどの作業を省略できるらしい。
眠い眠い眠い眠い。
とりあえず、配られたプリント用紙に書かれたコードを打つ。
新規プロジェクト作成の際にUse Automatic Reference Countingにチェックを入れること。
↓こんなかんじだけど合ってるかどうかはわからない…
@interface ViewController () { // 強い参照(所有する) ここに入れればリテインされる __strong MyClass *_myClass1; // 弱い参照 保持してはならない状態になる 解放される設定 __weak MyClass *_myClass2; // 安全でなく所有しない 弱い参照よりもひどい __unsafe_unretained MyClass *_myClass3; }
すいません、わかりません。
その後もしばらくわからない状態が続く。
教科書に記載されたコードを打つも、わからなすぎてキャプチャーを撮る気にならず…
そして、配られたプリント用紙に書かれたコードを打つ。
▼こんなんできました
▼iPadからの線を切るをタップするとこうなる
▼iPhoneからの線を切るをタップするとこうなる
▼ViewControllerからの線を切るをタップするとこうなる
うーん。はてながいっぱい。
太陽がいっぱい。
本日の授業終了