てくてくテック

気ままに開発のメモを書いていこうと思います。主にSwiftかと。

Swift

サンプル勉強会 1-1 ソースコードリーディング

はじめに 前回お話ししたiPhoneアプリのサンプル集を用いた勉強会について記します。今回は、シンプルでコード量の少なそうなForceSketchを題材にソースコードリーディングをします。 勉強会の進め方 ソースコードリーディングフェーズ(1h)と共有フェーズ(0.…

iPhoneアプリ開発初心者の友人たちとサンプル集を使った勉強会をしてみます

はじめに こんにちは。toosaaです。今日は、最近アプリ開発に興味ある友人たちとサンプル集を使った勉強会をやり始めたので、この勉強会についてお話しします。今回は、勉強会の進め方や目的について話し、次回以降で各会の様子について書こうと思います。 …

kituraのコードをIBM Cloud(Bluemix)のDevOps経由でdeployする

はじめに こんにちは。toosaaです。 今回は、Kituraで書いたコードをIBM Cloud(Bluemix)上のホスティングサーバーに、同じくIBM Cloud(Bluemix)のDevOpsを利用して自動deployするやり方について解説します。 ただし、今回はチュートリアルなど公式のドキュメ…

Viewを出したり消したりしたい

ゲームの設定画面を作りたい はじめに こんにちは、takenoteです。 今回もボードゲームのアプリを作成してみながらSwiftの勉強をしていきます。 どこから手をつけていいものかわかりませんが、 とりあえずゲームプレイ前の初期設定画面の作成を試みます。 今…

ゴキブリポーカーでSwiftの練習

とりあえず挨拶回です はじめに こんにちは、takenoteです。toosaaのマブダチです。 最近toosaaと一緒(?)にSwiftの勉強のためにボードゲームを作っています。基本的にProgramingは初心者、かつSwiftも初めて触っているため作成にあたっては何度もつまづい…

Kituraのチュートリアル(ToDoBackend)で気になったことを調べた

はじめに こんにちは。toosaaです。 前回、Kituraのチュートリアルの一つであるToDoBackendを動かしました。今回は、その中で気になった点について調べます。 Codable プロトコル Swift4から追加されたプロトコルで、これを使うとjsonとの変換を勝手にやって…

Kituraのチュートリアル(ToDoBackend)を試してみた

はじめに こんにちは。toosaaです。 前回IBM製のフレームワークKituraのGetting Startedに従ってサーバーサイドのHello, World!を行いました。今回は、Getting Startedに続いてチュートリアルとして用意されているToDoBackendを試してみます。そして次回、そ…

Kituraを使ってサーバーサイドSwiftを試してみた

はじめに すごく久しぶりに投稿します。今後は、友人たちと投稿しようと思います。 今回は、Swiftを使ってサーバーサイドを書いてみたいと思い、IBM製フレームワークのKituraを使ってみた件について、toosaaがお話しします。 内容としては、Getting Started…

Swift3でのclosure

はじめに Swift3にした時にclousureの部分の書き方が変わっていたなーというメモです 変更点 非同期の時は@escapingをつける Swift2まではデフォルトが@escapingの状態で@noescapeにする際に明示的に@noescapeにするという文法だったのに、Swift3から逆転し…

NavigationbarをHiddenじゃなくて透明にする

はじめに NavigationbarをHiddenにして消すのではなく、タイトルやボタンは表示するがNavigationbarはあくまで透明としたい時があります(下図参照)。単純にBar TintをclearColorに変更するとなぜか黒くなります。今回は、下図のようにNavigationbarを透明に…

Alamofire(非同期通信)をsemaphoreで同期的に処理できなかった

はじめに Alamofireでapi通信する際に、同期的に処理したくなったためSemaphoreを使ってやってみたけどうまくいかなかった時のお話です。 Semaphoreとは Semaphoreは排他制御の仕組みのことで、リソースへのアクセス可能な数のことです。Semaphoreが0の状態…

Swift3のGCD(dispatch_async)

はじめに Swift3でのGCD(dispatch_async)の使い方が変わっていたのでメモメモ Grand Central Dispatch(GCD)とは タスクを非同期に実行する技術のひとつとして、Grand CentralDispatch(GCD)というものがありま す。通常はアプリケーション中に記述するスレ…

PageViewControllerでNavigationbar(またはStatusbar)の高さ分ずれる

はじめに PageViewControllerを使っていて、なぜか遷移した直後の画面でNavigationbarかStatusbar分高さがずれるという現象に出会ったので そのことについて記します。 現象 PageViewControllerを利用した画面にUINavigationbarからpushViewControllerした際…

Swift3でPush通知から起動の時の、userinfo取得でちょっと迷った

はじめに Swift2.2からSwift3に移行する際に少し詰まった事をメモします。 アプリがキルされている状態からPush通知で起動した時にuserinfoを取得する際のObjectの型宣言をどうするのか?というお話です。 詰まった内容 そもそも実装したい内容 Push通知から…

Swift3にしたらAnyObjectがAnyになった

はじめに Swift2.2で作っていたプロジェクトをSwift3に対応させるために Xcode8についている自動コンバートを利用してみたところ AnyObject型がAnyに変更されました。 このことについて少し調べたことをまとめます。 どんな風に変わっていたのか? AppDelega…