Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > Playground

Playground

Playgroundの存在をしったのはCookpadのモバイルファースト室の三浦さんの記事をツイートから知りました。ありがとうございますorz この機能、、、便利です。知っておくべきだったなぁと思える機能です。 デバッグを簡単にしてくれるサポート。Playground=遊び場、ほんとに遊ぶ感覚で出力を確認していけるそんな便利機能を説明していきます。


機能としては、playgroundファイル上でテストスクリプトを記述すると、コンパイルしなくても自動でその結果が右側に表示されます。その結果は変数であったり描画であったり、ループの関数であったり様々です!

参考:Swiftで遊んでますか?みなさんはplayground使っていますか?(Cookpad)
参考:グラフもレンダリングもイケる!Playgroudが超絶便利!
参考:Playgroundで実行可能なドキュメントを作成する

Playgroundはどんなものか、百聞は一見にしかず、まず見てみましょう!

ライブコーディングですので、動画で見た方がおそらくわかりやすいです。2:30あたりから見るとわかり易いです

使い方

使い方は簡単でファイル作成時に「Playground」を選択するだけです。既存のプロジェクトがあってもファイルを追加するだけです。


こんな感じでファイルが追加されます。


あとは右側にコーディングしてテストするだけです。

やってみる

どうせなのでswiftサラリーマンの絵でも書いてみます。

結果朝活の時間内では、まったく思っているものが作れませんでした、、、丸がかけなかったです。この丸の書き方もまた方法を記載しておきます。 以下、Playgorundのソースを貼り付けておきます。


// Playground - noun: a place where people can play

import UIKit
import Foundation

let size = CGSize(width: 200, height: 200)
let view:UIView = UIView(frame: CGRect(origin: CGPointZero, size: size))
view.backgroundColor = UIColor(white: 0.9, alpha: 1.0)
UIGraphicsBeginImageContextWithOptions(size, false, 0)

// 顔を描画
let rect = CGRectMake(20, 20, 150, 150)
let roundCorner = UIRectCorner.TopLeft | UIRectCorner.BottomRight
let roundSize = CGSizeMake(6.0, 6.0)
let path = UIBezierPath(roundedRect: rect, byRoundingCorners: roundCorner, cornerRadii: roundSize)
UIColor(red: 0.8, green: 0.5, blue: 0.1, alpha: 1.0).setFill()
path.fill()

// 線を描画する(口)
let path2 = UIBezierPath()
path2.moveToPoint(CGPointMake(50, 100));
path2.addLineToPoint(CGPointMake(150, 100))
UIColor.blackColor().setStroke()
path2.stroke()

//線を描画する(目)
let path3 = UIBezierPath()
path3.moveToPoint(CGPointMake(50, 50));
path3.addLineToPoint(CGPointMake(70, 50))
UIColor.blackColor().setStroke()
path3.stroke()

// 線を描画する(目)
let path4 = UIBezierPath()
path4.moveToPoint(CGPointMake(100, 50));
path4.addLineToPoint(CGPointMake(140, 50))
UIColor.blackColor().setStroke()
path4.stroke()

//上記の描画をViewにセット
view.layer.contents = UIGraphicsGetImageFromCurrentImageContext().CGImage
UIGraphicsEndImageContext()

//プレビュー
let preview = view;

以下、コピペ用の簡易版


import UIKit
import Foundation

let size = CGSize(width: 200, height: 200)
let view:UIView = UIView(frame: CGRect(origin: CGPointZero, size: size))
view.backgroundColor = UIColor(white: 0.9, alpha: 1.0)

//プレビュー
let preview = view;

追記: 丸の書き方がわかりましたので「描画(丸、三角、四角、線)」に追加しております。

↓こんな記事もありますよ!

Facebook SDK のAppEventを検証する

さて、AppEventですが、FacebookのAppを利用したログシステムなのかな。ログをカスタマイズして保存して、 それを解析できる、そんな感じなのかなと思っています。 広告利用の為に、インストールされた数やログの解析によってユーザの動作を確認できるようですので細かく設定できるのではと思います。 まずは上記のようにログを保存する、ログを読み込む、ができるのかを検証してみます

UITabBarController

スマホ画面下にタブが出てきて画面を切り替えできるUITabBarViewControllerクラスです。UITabBarItemの記事を追加しましたがUITabbarの記事がなかったので追加しました。(※目のチカチカにご注意ください。)

AppleWatchとiPhone連携をナターシャさんのデモを参考に調査

先日Swiftサラリーマンに関してTwitterでつぶやいてくださっていたまっちょさん に教えていただいたAppleWatchアプリ作成に関する海外のWatchKitのナターシャさんの記事(Architecting Your App for the Apple Watch)を教えていただきました、 動画やプレゼンもあり英語でしたがサンプルコードも付いていて分かりやすかったです!
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!