Swift 独学プログラミング プログラミング初心者のFinderとXcordプロジェクトの関係〜ファイルのコピー編〜

あっ どうも子へびです。

着々と暖かい日が増えて気分的には嬉しい子へびです。子へびだから冬眠から目覚めているのでしょうか?けどコード書きにおいてはまったく冬眠から覚めていません・・・。むしろ是が非でも目覚めて欲しいと願う子へびです。笑




子へびは今自身のアプリの作成の為にMaster松陰から貴重なsampleコードをいただき(これは子へびにとって家宝ものの大切なお宝です)双方向バインドの動きについて勉強中です。っというとなんだかとってもカッコいいように聞こえますが、コードを見る前に多分30回以上プロジェクトを作り直しています。codeの問題じゃないんです。その下準備としてresource、sourceをれぞれのファイルをおこし画面ごとにviewcontroller、view、presenterのグループを作って行く。この作業をなんと30回以上うまく作れず作り直しをせざるをえなかったのです。

どうしてうまくいかなかったのか?思わず笑ってしまったのはXcodeのファイル上でなぜだかmainstortboardだけ無くしてしまっていることすらありました。

単純にFinderでしなければいけない処理、Xcode上でしなければいけない処理を無視したりまたファイルをコピーして一部分だけ使用しようとする時は要注意が必要です。でもこのあたりの作業が後々のcodeの作成に影響を与えてしまうなんて子へびみたいな初心者組は考えてもいないと思います。

けどMaster松陰には

Master松陰

はい最初から作り直し!

っと何度もダメ出しをくらいました。そこで今日は子へびみたいな初心者組の為に虎の巻きを公開します!

その名も

Master松陰家訓

■ XCODEとFinderで編集するときに禁忌目録じゃ

1, XCODEプロジェクト内のファイル名やフォルダ名はFinderから変えてはならぬ

2, XCODEの左リストで、自分が作成したフォルダ以外を決して削除してはならぬ

3, プロジェクトフォルダ以下にFinderでフォルダを作成してはならぬ

4, XCODEにファイルをドロップするときは、必ずプロジェクトフォルダ以下にファイルをコピーしてからやるべし

まぁ他にもあるけど、この4っつは厳守よ

1, でファイル名やフォルダ名を変えたいなら、XCODEの左リストから変更ないとダメよ
その時に、自分が作ったフォルダ以外は名前を変えてはダメよ

2, はXCODEが作ったフォルダを削除してはダメってことね、自分が作ったフォルダは削除してもいいけどね

3, はフォルダ分けしたいなら、かならずXCODEの左リストでフォルダを追加するってことね、Finderでやっちゃダメ
また、XCODEの左リストのフォルダの追加は2種類あるから気をつけてね。この2種類は、With Folder と Without Folder で、Without FolderにするとFinderでFolderを作らないってことよ。ほとんどはWith Folderで作るけど、XCODEが自動生成した特定のファイルは Without Folder でプロジェクトルートに置かないとダメなファイルもあるからね。

4, はよくやるミスなので確認する癖を付けなきゃダメ、これからリソース画像とか追加すると思うけど、その時にダウンロードしたものをそのままドロップしたりすると即アウトよ
何故ダメかというと、プロジェクトフォルダ外にあるファイルをドロップすると、そのファイルパスは絶対パスでXCODEに登録されてしまうので、ドロップ元のファイルを削除したり移動したりするとXCODEがリンクを見失うからね。それにバックアップを取るときに、プロジェクトフォルダ外にあると、バックアップの対処から外れてしまうでしょ?
あと、4の追加として、ドロップするのはファイルだけね、Folderをドロップしちゃダメ
何故かというと、禁忌目録の3にも該当するけど、Folder管理はXCODEにやらせないとダメだからね

どうですか?
熟練者には常識かもしれませんが、初心者組にはなかなか検索では出てこない内容なので参考になれば♪

ファイルの作成はできたものの子へびには次なる試練が・・・。

子へび

とほほ・・・。




Swift 独学プログラミング プログラミング初心者のscrollviewの設定〜余白がうまれる疑問編〜

あっ どうも子へびです。

この季節になるとどうしても肉まんが食べたくなる子へびですがその欲求が高まり今日こそ肉まんを食べるぞ!っとスーパーに行くとなんと肉まんだけ売れ切れてない・・・。なんということ!笑 あんまんやらピザまんやらはあるのに肉まんだけない笑 ないとなるとさらに食べたくなってしまうのが人の心理ではないでしょうか?あー肉まん!みんな同じ気分だったのかな〜?



scrollviewについて何度も作り直していたのには一つ気になる点があって

これです。scrollしきっちゃうと上部・下部に白いスペース部分がでてくる点です。

scrollviewの上にviewを2つ置いて色をつけて実験したのでこの白いスペース(ベース)が現れることわかって、子へびが設定を間違えているから現れているのかと思いこんでいたのです。そもそもviewが重なりあってできている画面なのにベースが見えてしまうなんてかっこ悪いと子へびは思ってしまったんです。どこのサイト見てもこの解決方法が記載されていなくてとうとうMaster松陰に相談すると

Master松陰

それはそもそものiosの動きです。だから変でもなんでもありません。

子へび

がーんそうだったのか・・・。でもこの部分気になる人っていないのかな?気になって何度も作り変えていたぐらいなのに子へびは。

Master松陰

止めることはできるけどね、iosアプリらしくないね。オーバースクロール部分にUIを作り込んで格好良くすることもできるけどよく使うのはプルダウンアップデートね。

っと解決策はあるらしく最終的に作り込んでやっぱり気になるなら試して見たいみたいと思います。

今回Master松陰がくれた子へびの間違え探しのサンプルです。このようにすべて表記されていればあなたのscrollviewは成功しています。笑 数あるサイトに作り方はたくさん書いてあっても最後どう表記されていれば正しいかはなかなか記載されていないと思うのでご参考になれば。

あとコツはこれです。

scrollviewを何度も作り直したおかげで?!autolayoutはちょっと馴染んできたかな?っと思ったら

Master松陰

次はnavigationcontrollerとの組み合わせね。

っと言われて次なるステップに子へびは進んだのであーる。

子へびは周防大島を応援しています
頑張ろう!!周防大島

Swift 独学プログラミング プログラミング初心者のautolayoutの使い方〜scrollview編〜

あっ どうも子へびです。

子へびも愛用中のMacBookAirの後継機が発売されて興味津々の子へびです。新たなGPUを搭載させてきっと画面を見比べるとその変化を目の当たりにすることができるんでしょうね〜。けど子へびにとって何よりにやけてしまうのは新たなGPUを積んでいるということは
それだけ画素数を上げる為高性能なGPUを動かす為にこの小さなMacBookAirのマザーボードの上がさらにフル稼働する仕組みに変更されているんだろうなと妄想してしまいついニヤついてしまう子へびです。笑 やっぱり電力量を上げる為の半導体の変更かな?けど充電力もあげられているらしく省エネモードで稼働できるということは?っとこのあたりの詳しい情報を知ってる方はぜ是非ご教示ください。笑



今回よく使うscrollviewの設定を試してみたわけですが、結論からいうと
①scrollviewとviewの根本的な仕組み
②scrollviewやらviewを設定する際のautolayoutの仕組み
この2つを互いに理解しなければならなかった。っということでした。

この2つが子へびの場合混同してしまってうまく作り上げることができませんでした。正直多分30回ぐらいなんども理解できるまで作り直しました。そしてこの2つの仕組みをそれぞれに理解して組み合わせる必要があることに

子へび

この2つがないと設定できないだから最初から両方の説明をしてくれるサイトやらサンプルUIがそもそもあってもいいじゃないか!絶対に2つとも絡んでくるんだし。

っとMaster松陰に疑問をぶつけたのですが

Master松陰

それはナンセンスですね。2つの説明を記載したサイトなんて冗長的だし、必要ありません。自分の欲しい答えが全部丸々記載されているなんてまずありえないと考えた方がいいです。みんな一部分参考にはするけれどあとは自分で使ってみてアレンジするものなのです。上手なコードを書く人はそもそも検索するのも上手です。

っと一喝させその時は

子へび

きっと子へびみたいな考えの人もいるはず・・・。

っと思ったのですが、よく考えてみるとみんな同じものをサンプル通り同じに作って出来上がっても全然面白くないですよね笑。自分のアイディアで好きなように組んで出来上がるのがプログラミングの良さだし楽しさでもある。なのでMaster松陰の上手なコードを書く人は検索するのも上手を頭に叩きこんでcatch and tryを繰り返して自分オリジナルのものを作り込んでいく技術を身に付けたいと思います。

この話Master松陰が久しぶりにサンプルをくれたのでまだまだ続きます。笑

次回へつづく・・・

子へびは周防大島を応援しています
頑張ろう!!周防大島

Swift 独学プログラミング プログラミング初心者のUIScrollViewの設定〜縦スクロール編〜

あっ どうも子へびです。

週末車の後ろのハッチは閉めようと下ろしたらおもいーーーーーーーーーきりごし!っとすごい音がしてその瞬間子へびの頭に激痛が・・・。そうなんです子へびの頭にハッチのそれも角が大ヒット!もう痛すぎて涙が出ませんでした・・・。いっそこんな痛い思いをしたのだから頭の回線2、3本繋がってくれてcleverになっててもらいたいと願う子へびです。今日も右頭がズキズキ・・・。

子へび

本当痛いよ・・・とほほ



さて入力画面がキーボートで隠れてしまうことを解決する為にScrollViewを設定してみようと思い2つのサイト参照して作ってみたのですがうまく動かずシュミレーターを実装するとエラーコードの嵐。

Master松陰

そもそもまだコードにも繋いでないのにエラーが出るなんておかしすぎる!

子へび

そうなのか・・・。だとするとこの設定方法を間違えてエラーが出ている訳ではなくもしかすると他の部分で何か引っかかっているのかも?mainstreetboardから画面切り替える時になんか出てきてた気がする。

そこで思いついたのが子へびはまだ何らかしらのエラーが出た時解決方法を見つけることができるほどXcodeの知識が深くない為、どこか手順が狂ってしまっているならその間違いを探して時間をかけるより最初のファイルを作成するところから始めて一から全てやり直そうと思いつきました。前回記事に書いたおかし作りの考えを応用中です。笑 おかし作りも手順を間違えて途中から正そうとしても絶対にうまく行かなくてそれなら最初から作り直した方が成功するのです。でもゆくゆくはエラーcodeの検証もできるようにならないとですよね!

そのことをMaster松陰に話すと

Master松陰

それはいい考えです。最初の頃は私もそうしていましたし後から動かなくなる理由が発生するじゃないかと気になったまま作り続けるは嫌なので全てをクリアにして作って行くべきです。

っとこの子へびのやり方には賛成してくれました。その結果功を奏してうまく動き出したのですが

Master松陰

子へび。このScrollViewを設定で一つ気をつける点があります。

っとくれた今回のMaster松陰のアドバイスがどこのサイトには記載されていなくてとても役に立つアドバイスだったのです。

つづく・・・。

子へびは周防大島を応援しています
頑張ろう!!周防大島