AutoLayout ッて

本日久々に、朝のお散歩、徒歩出勤と順調にこなしてきた飼主と我家のスリーボロズ。少しずつ、雲が広がりはじめている午後、なんとか徒歩帰宅まで持ち堪えてもらいたい、本日の金沢のソラモヨウ。

さて、昨日の「FLASH」製パラパラアニメで、只今格闘中のiPhoneアプリに伝説が仕込まれるぞ!! ッと、飼主、ひとり勝手にテンションアップで、シロート・コード書きまくり!! の予定だった本日なのだが、ちょっぴり冷静に、まずはStoryboard上での出来事を合理的に処理するためのコンストレインの設定の手順、「AutoLayout」の理解が必要だねッと・・・。

前回のアプリ作成では、このAutoLayoutの仕掛け方がいまいち理解出来ず、デバイスの画面違いを処理するために2つのViewCntrollerをつくったんだけど、今じゃ、2つじゃ済まないもな・・・。

と云うことで、ここでまたまた足踏みだね、やれやれ・・・。

ピナ姫5歳

晴天続きの金沢方面、どうやら昼間は半袖で十分のようだ。と云うことで、本日5月8日は我家のピナ姫の誕生日。

生後3ヶ月で福岡からの飛行機旅行や、着いた先でのボス殿との同居や、2歳直前での出産・子育てや、湿疹でお尻丸刈り事件など、幾多の経験を経て、本日無事5歳の誕生日。

お散歩は気の向くままに歩いたり、バッグインだったり、プリ嬢の態度には時々ぶち切れ、ボス殿にはほぼ愛想を尽かしながらも毎日毎朝一番に飼主を起こしにくるピナ姫・・・、またまた一年我儘放題なのだろうが、元気が一番と云うことで、ついつい飼主も許してしまうんだろうな、その我儘・・・。

と云うことで、ピナ姫の誕生会は先日5日にケーキも焼いて済ませているので、今日は何事もなかったかのような振る舞いの飼主、XcodeのPlaygroundでイメージの扱いをテストしようとして、マニュアル本をひっくり返すも、どうやらXcodeのヴァージョンが進んでいて、ちょっとばかり四苦八苦の午後は相変わらず。

我家のボロズも相変わらずの5月8日、やれやれだね・・・。

_R000952

_R000958

_R000951

_R000957

_R000955
と云うことで、今日はピナ姫オンパレード・・・

_R000943

ボスプリ父娘はオマケだね・・・
ボスプリ父娘はオマケだね・・・

人柱、あるいは生贄

朝一番のお散歩、少し遅めの徒歩出勤まではなんとか持ち堪えたソラモヨウもお昼前からは雨の降り出した本日の金沢方面。

さて、昨日から今朝にかけて、OS X、iOS、Xcode、iTunesと相次いでアップデートの報。

飼主もメイン使いのMacBook Pro、MacBook Air、iPad Air、加えて「すぐに使えるように」と設定を依頼された、箱入りMacBook AirのOS、その他のアップデート完了。後は、サブに控えているiPad nimiのアップデートを残すのみ・・・

ッて、このアップデートって只今「しばらくお待ちください」となっているアップルストアで数十分後に予約を受け付けはじめるApple Watchに合わせたものだよね・・・

ただ、飼主、これを現物を見ずに予約する勇気は持ち合わせていない。人柱を期待している知り合いの方々もおそらく何人かはいるだろうとは思うが、今回は生贄になる予定はないのであしからず・・・。

Optionalやnilのこと

そろそろApple Watchの姿もうっすらと見えはじめたか?本日、開発キット「WatchKit」の提供がはじまった。

そんなこんなで、飼主、只今OS Yosemite環境下、Xcode6.1でSwiftのお勉強中。

で、いきなり躓いているのがどうやら「nil」の扱い。Objective-Cではほとんど意識しなかったのだが(というより、飼主の気がそこまで回らない)、Swiftではnilの扱いが厳密になっているようだ。

ここまでの理解だと、nil=「カラ」はダメのようで、変数が空の可能性を「!」や「?」でその取り扱いを明示しなければいけないようなのだね・・・

これを「Optional」などと云うようなのだが、概念的にその雰囲気を理解出来てもコード上にどう記述していけば良いのか、すっきりと理解出来ないのがいつもの飼主。

例えばパラパラアニメを作りたくてとりあえず画像要素の配列をつくってみる。

var imgArray = [

  UIImage(named: “01.png”),

  UIImage(named: “02.png”),

  UIImage(named: “03.png”),

  UIImage(named: “04.png”)

]

これじゃダメで「‘UIImage?’ is not identical to ‘AnyObject’」なんて云われてしまう。

で、配列の中身は「UIImage」クラスで、決して空(=nil)じゃないですよッて「!」ッて云ってやらなくてはいけない。

[UIImage!]ッてね・・・。

var imgArray:[UIImage!] = [

  UIImage(named: “01.png”),

  UIImage(named: “02.png”),

  UIImage(named: “03.png”),

  UIImage(named: “04.png”)

]

Swiftへの道は山あり壁ありだな・・・。

Xcode6 IconBadge

Xcode6でapplicationIconBadgeNumberをいじっていると、うまくシミュレーターに反映されない。XcodeではBuild Successedなのだが・・・。

とりあえず、今のところはXcode5.1.1で作業している方が良いのだろうか? Swiftをいじらない限り・・・。