2015年8月28日金曜日

【Xcode / Swift入門】変数と型について

本稿では、Swiftの変数と型について記載していきます。

Swiftの変数と定数について

Swiftには、定義した値を変更可能な変数と、一度値を設定したら変更できない定数があります。変数の宣言には”var 変数名”定数の宣言には”let 定数名”を使用します。では、Playgroundを起動し、下記を記述してみます。
※Playgroudの使い方については、【1-7. Playgroundを使ってみよう】を参照してください
    
//変数定義
var varValue = 1
varValue = 2

//定数定義
let letValue = 1
letValue = 2


すると、定数として宣言したletValueにエラー(Cannot assign to "let" value 'letValue')が出力されていることがわかると思います。このように、varで定義した 変数は値の変更が可能なのですが、letで定義した定数については値の変更が不可になります。

その他のSwiftの特徴として、変数定数名に日本語を使用することができる点C言語やjavaの場合文末につけていた";(セミコロン)"も不要な点が挙げられます(もちろんつけても良いのです)。また、変数名や定数名を","区切ることにより、一度に複数の値の定義が可能になます。試しに、下記のように入力してみましょう。

    
//変数名日本語
var 名前 = "name"

//変数定数名 を漢字かつ";"で区切る
var 勉強 = "swift"; let 今日の記事 = "変数定数について"

//","で区切る
var 値1 = 1,  値2 = 2, 値3 = 3




Swiftの型について

通常、プログラミング言語では、整数(Int型)なのか文字列(String型)なのかなどを変数を定義する際に型を指定する必要があります。型を指定する際は、変数名の後ろに、":(コロン)”を付けて型を記述します。

var 変数名: 型

しかし、Swiftには型推論機能が備わっており、型を明示的に指定しなくても、変数へ代入する値によって型を推測して自動的に決定してくれます。
では、下記の通りPlayground上に入力し、結果がどのように出力されるか確認してみます。
  
//型指定あり
var 名前: String = "name"
var 年齢: Int = 5

//型指定なし
var 名前2 = "name"
var 年齢2 = 5
println(年齢2)

//小数点付きの値を変数に代入し、その後、整数を代入
var 円周率 = 3.141592
円周率 = 3
println(円周率)

円周率 = "3"



上記の結果の通り、型指定あり/なしに関わらず結果に変化がないことが確認できると思います。また、「年齢2 = 5」と「円周率 = 3」の結果をprintlnで確認してみると、「"5"」と「"3.0"」になっているのが確認できるかと思います。これは、変数に最初に代入した値が、年齢2 = 5 (つまり、整数型)、円周率 = 3.141592(つまり、小数点付きの型)となっているため、Swiftが型推論し、最初に代入した値の型を自動的に決定したためです。また、円周率 = "3"(""内に記述された文字はすべて文字列として認識)と代入しようとしても型が違うとエラーが出力されることも確認できます。
このようにSwiftでは、型推論というとても便利な機能をサポートしているため、とても簡単にプログラムを記載していくことが可能になって


println()とは、()内に記述された変数の中身を表示してくれるとても便利な関数です。様々な場面で活用できるので、是非覚えといてください。
(Xcode2.0の場合は、Println→Printに変更してください。)

Swiftの型一覧

では、最後にSwiftにて使用可能な型一覧を記載します。配列やディクショナリについては、【2-4. 配列(Array)とディクショナリーについて】にて、詳細を記載いたします。

・整数型【var 変数名: Int
 整数を扱う場合に使用する型です。
 
・浮動小数点型【var 変数名: Double
 小数点付きの数値を扱う場合に使用する型です。

・文字列型【var 変数名: String
 文字列を扱う場合に使用する型です。変数代入時に""(ダブルクォーテーション)で囲まれた値を代入すると、すべて文字列型になります。
 
・論理型【var 変数名: Bool
 true or falseの値をとる場合に使用する型です。

・配列【var 変数名: [型]
 複数の値を連続的に並べてデータのことを配列と呼びます。Swiftでも 複数のデータを一つの変数として扱う場合に使用します。

・ディクショナリ型【var 変数名: Dictionary<型: 型>
 文字列や数値をキーとして、キーと値のセットを持つ型です。キーを指定することにより、値の参照などが可能となります。

では次回は、オプショナル型について説明します。



2015年8月27日木曜日

【Xcode / Swift入門】Playgroundを使ってみよう

本稿では、Xcodeの機能の一つであるPlaygroundについて説明したいと思います。

Playgroundとは、 Xcodeに組み込まれているSwiftの実行環境で、Swiftで記載したコードの実行結果をリアルタイムに表示してくれるものです。
通常、プログラミング言語を勉強する場合、コードを書いて、ビルドして、デバックして実行結果を確認して・・・という少々面倒な処理を実行しなければいけませんでした。

そういった面倒なことを省いて簡単にSwiftを勉強できるようにしたのが、このPlaygroundになります。

つまり、Swiftを勉強する上では、欠かせないツールになります。

Playgroundの起動


では、早速Playgroundを起動してみましょう。
Xcodeを起動し、Welcome to Xcodeの画面が出てきたら、"Get started with a playground"を選択します。


次にPlaygroundのファイル名を設定する画面が出てきますので、Name欄を入力します。
名前は何でも良いですが、今回は初期値であるMyPlaygroundとします。名前入力後、Platform欄にてiOSを選択し、Nextボタンを押します。


すると、プロジェクトを保存する際と同様に、Playgroundを保存する画面が表示されますので、お好きなフォルダを選択し、”Create”を押してください。

下図のような画面が表示されましたら、Playgroundの起動は完了です。Playgroundはデフォルトでは、2画面表示になっており、左側がソースコードを記載するエディタエリア右側が実行結果を即座に表示してくれるエリアになっています。


Playgroundの使い方

では、実際にPlaygroundを使ってみたいと思います。使い方は左側のエディタエリアにソースコードを記載するだけです。
今回は、文字列の変更、ラベル作成、値をグラフとして表示してみたいと思います。下記のように入力します。
※コードの詳細は別 章にて説明します。

    
if str == "Hello, playground" {
    str = "Hello Xcode!!"
}

println(str)

//ラベル作成
var rect = CGRect(x: 10, y: 10, width:200, height:50)
var label = UILabel(frame:rect)
label.backgroundColor = UIColor.lightGrayColor()
label.textAlignment = .Center
label.text = str

//グラフを表示してみます
var value = 1
for i in 1...10{
  
    i + i
    
}



※Xcode2.0の場合は、Println→Printに変更してください。
実行結果エリアに結果がすぐに表示されるのが確認できます。ただ、これだけでは、ラベルが正常に作成されたのか、グラフの値が合っているのかなど確認することができません。そういったところを確認する機能として、リザルトビューという機能があります。
確認方法は、実行結果エリアで詳細を確認したい実行結果の右側にマウスカーソルを合わせると”+”マークが出てきますので、それをクリックするだけです。



すると、上図のようにUI、値やグラフなど詳細な実行結果を確認することができます。

※Xodeの6.4よりレザルトビューは、アシスタントエディターではなく、インラインにて表示されるように仕様が変更されています。よって、本記事では、敢えてアシスタントエディターの説明を省いています。

では、次回からは、Playgroundを使ってSwifについて説明していきます。



2015年8月26日水曜日

【Xcode / Swift入門】AutoLayout機能を使ってみよう

本稿では、XcodeのAutoLayout機能について、説明します。 

これまでは、ボタンやテキストなどのコンポーネントをStoryboad上にドラッグ&ドロップで配置/位置調整をしてきたと思います。オートレイアウト機能は、画面サイズや画面の横縦切り替えなどを行った際に崩れてしまうコンポーネント(部品)の位置(レイアウト)を自動で調整してくれる機能になります。

 では、早速AutoLayout機能を使ってみたいと思います。 まずは、いつも通りプロジェクトを作成します。今回は、"AutoLayout"という名前でプロジェクトを作ってみたいと思います(名前は何でも良いです)。

 Xcodeを開いて、
Create a new Xcode project → Single View Application → product name を”AutoLayout”としてCreateボタン
を押します。 

プロジェクトが作成されたら、Main.storyboadを開きます。今回は、レイアウトの確認をしたいため、エディタエリアを2画面にし、右側の画面はPreviewモードにします。


では、次にMain.Storyboad上にラベルやボタンなどのコンポーネントを下図のように配置していきましょう。配置が完了しましたら、Preview画面の下に縦横切り替えボタンがありますので、クリックします。



すると、Preview画面が横画面になったと同時にせっかく配置したコンポーネントがずれているのが確認できます。




このようにオートレイアウトを使用しない場合は、画面の縦横切替や画面サイズによってコンポーネントの配置がずれてしまうため、これを解決するためにAutoLayoutを使用します。


オートレイアウトの設定

では、オートレイアウトの設定をしてみましょう。
まず、Main.storyboad上のラベルを選択します。そして、Main.Storyboad画面(2画面にしているエディタエリア左画面)の右下にある3つのボタンのうち、真ん中のボタンをクリックします。
すると、下図のような画面が出てきますので、4方向印の上部を選択します。これは、選択したラベルの画面上部からの位置を、現在の場所で固定するということを意味します。
次に、Width/Heightへチェックを入れます。Width/Heightのチェックはラベル自体の幅/高さを固定するということを意味します。



つまり、画面上部からの位置とラベルのサイズを固定したことになります。

次に、3つのボタンのうち、左のボタンをクリックします。そうすると、下図のような画面が表示されます。そして、Horizontal Center in Containerにチェックを入れます。これは、選択したコンポーネントをセンタリングすることを意味します。



つまり、これらの設定を行うことで、ラベルの位置、サイズ、センタリングを固定にしたことになります。

これで、オートレイアウトの設定は完了です。Preview画面を確認すると、ラベルの位置が固定されていることが確認できます。

同様に、本設定をテキストフィールド、ボタンにも実施します。
すると下図のように横画面になった場合も、レイアウトが崩れていないことが確認できます。



オートレイアウトの説明は以上になります。今回はセンタリングでの固定方法を説明しましたが、その他のオートレイアウトの設定については、今後の記事内で紹介していきたいと思います。

次回は、Xcodeの優れた機能の一つであるPlaygroundについて説明します。



2015年8月25日火曜日

【Xcode / Swift入門】簡単な電卓(四則演算)アプリを作ってみよう

本稿では、ラベル、テキストフィールド、ボタン、PickerViewを作ってシンプルな電卓(四則演算)を作成していきます。
※ラベル、テキストフィールド、ボタンについては、前回の記事を参照ください。

PickerViewとは、複数の値からユーザに一つ選択させたいときに使うユーザインターフェースです。よくアラームの時間などを設定するときに使う下図のようなものです。





今回作成するアプリでは、2つのテキストフィールドに記載された数字を、”+、ー、×、÷”を表示したPickerViewで選択し、計算ボタンを押すことにより、計算結果をラベルに表示するというアプリにしたいと思います。また、テキストフィールドで使用できるキーボードの文字は、数字のみというユーザに親切な処理まで入れたいと思います。


プロジェクトおよびアプリ画面の作成


プロジェクトを作成します。今回は、"Simple Calculator"という名前でプロジェクトを作ってみたいと思います(名前は何でも良いです)。

Xcodeを開いて、
Create a new Xcode project → Single View Application → product name を”Simple Calculator”としてCreateボタン
を押します。

プロジェクトが作成されたら、Main.storyboardを開いて”見た目(アプリ画面)”の作成を行います。ラベル、テキストフィールド、ボタン、PickerViewを使って下図のような画面を作成します。





PickerViewを使う場合は、ユーティリティエリアの下部にて"Picker"と検索し、抽出されたPicker Viewをドラッグ&ドロップします。
※Main.storyboardの設定方法がわからない場合は、【1-3. Interface Builderを使ってみよう】を参照ください。

また、今回はテキストフィールドをクリックした際に立ち上がるキーボードを、数字のみにする設定もします。テキストフィールドをクリックし、ユーティリティエリアの↓マークのようなものを選択します。下の方に、Keyboard Typeという欄があるので、そこでNumberPadを選択します。



PickerViewの設定

テキストフィールド、ラベル、PickerViewについては、変数の設定し、ボタンについては、Actionの設定をします。



※本設定がわからない場合は、【1-4. ボタンやテキストのコーディング】を参照してください。

次に、PickerViewの設定をしていきます。PickerViewを使用するにあたっては、下記の6つの処理が必要になります。

1、ViewControllerとPickerViewの括り付け
2、PickerView使用宣言
3、PickerViewに表示する値の設定
4、PickerViewの列数設定
5、PickerViewの行数設定
6、PickerViewへの文字の表示

上記一つ一つは難しい処理ではありませんので、下記を参照し作成していってください。

1、ViewControllerとPickerViewの括り付け
  ViewController上でPickerViewを使用する設定をします。この設定がない場合、エラーが出力されずにPickerViewが正常に動かない(PickerViewが表示されない)状況に陥ります。この設定は、Main.storyboad上にて実施します。
PickerViewを選択し、controlを押しながらViewControllerの上部の黄色2重四角にドラッグ&ドロップします。



すると、下図のように"dataSource""delegate"が出てきますので、両方選択します。



この設定は忘れずに実施しましょう。

2、PickerView使用宣言
  これはViewController.swiftにて宣言します。先頭に記載があるClass ViewControllerの最後に"UIPickerViewDelegate"を追加します。

   

    Class ViewController: UIViewController, UIPickerViewDelegate {




3、PickerViewへ表示する値の設定
  PickerViewの値は、配列(配列については、【2-4. 配列(Array)とディクショナリーについて】にて説明します。)として定義します。今回は、”+、ー、×、÷”をPickerViewに表示するため、コンポーネントを定義した箇所に下記のように設定します。 


4、PickerViewの列数設定  
  下記の関数をclass ViewController内に記載します。” override funcdidReceiveMemoryWarning() { ”
の下あたりに追加すると良いです。

 //pickerに表示する列数を返す(実装必須)
    func numberOfComponentsInPickerView(pickerView: UIPickerView) -> Int {
        
        return 1  //1列表示
 
    }

return で返す値がそのまま列数になります。つまり、上記は1列表示するという意味になります。

5、PickerViewの行数設定
  下記の関数をclass ViewController内に記載します。上記4にて定義したPickerViewの列数の後に記載すると良いです。
    
 //pickerに表示する行数を返す(実装必須)
    func pickerView(pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        
        return arithmetic.count;  // 選択肢の数
    }
 
return にて返す値がそのまま行数になります。PickerViewの行数は、基本的には、選択肢の数になると思います。配列にて指定した文字数(選択肢の数)は、”配列で定義した変数名.count”で取得できます。

6、PickerViewへの文字の表示
  3にて指定した値をPickerViewに表示する関数を定義します。下記の関数をclass ViewController内に記載します。上記5にて定義したPickerViewの行数定義関数の後に記載すると良いです。
    
  //PickerViewへの文字列の表示
    func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String! {
        
        return arithmetic[row]  
    }

定義した配列の変数にrowを入れることにより、文字列の表示が可能になります。

上記4、5、6を追記すると以下のようになります。




ここまできたら一旦iPhoneシミュレータを起動してみます。下記のように表示され、PickerViewが表示していれば成功です。



コーディング

では、コーディングをしていきます。今回は、計算ボタンが押された際、PickerViewの選択された値をもとに計算し、結果を表示するというコードを書き込んでいきます。

記載する場所は、ボタンが押されたときなので、先ほどボタンのActionとして定義した@IBAction func calculate(sender: AnyObject) {}内に記載していきます。

まず、左側のテキストフィールドの文字列と右側のテキストフィールドの文字列を数字として取得し、変数に代入します。
    
  var GetHidariNum : Int = hidari.text.toInt()!
  var GetMigiNum: Int = migi.text.toInt()!

#Swift2.0を使用する場合は、
 let GetHidariNum : Int = Int(hidari.text!)!
   let GetMigiNum: Int = Int(migi.text!)!
 としてください。Swift2.0よりtoInt()は使用できなくなっています。

※変数の定義方法や"!"の意味は本記事の【第2章 Swiftのことを知ろう】にて説明します。

次に、PickerViewにて選択された値が、"+"の場合は取得した値を足し算し、"-"の場合は取得した値を引き算し、"×"の場合は取得した値を掛け算し、"÷"の場合は取得した値を割り算するように記載していきます。

今回使用する関数は、PickerView変数.selectedRowInComponent(0)です。これは、PickerViewの1列目(”0”として指定しています)で選択されている値のインデック番号(通し番号)を取得する関数になります。つまり、"+"の場合は"0"、"-"の場合は"1"、"×"の場合は"2"、"÷"の場合は"3"を取得します。
あとは、取得してきた値に対し、If文もしくはSwitch 文などを用いて条件分岐してあげれば完成です。今回は、Switch文を使って下記のように記載しました。
※If文もしくはSwitch 文は本記事の【第2章 Swiftのことを知ろう】にて説明します。
    
  //1列目の選択されている値のインデックス番号を取得する
        switch fourArithmetic.selectedRowInComponent(0) {
        case 0:
            result.text = String(GetHidariNum + GetMigiNum)
        case 1:
            result.text = String(GetHidariNum - GetMigiNum)
        case 2:
            result.text = String(GetHidariNum * GetMigiNum)
        case 3:
            result.text = String(GetHidariNum / GetMigiNum)
        default:
            break
            
        }

ここまで来たら再度iPhoneシミュレータを起動してみます。テキストフィールドに数字を入力し、 PickerViewで値を選択し、計算ボタンを押して計算結果が表示されれば成功です。




今回作成したViewController.swiftはこちらからダウンロード可能です。

次回は、アプリの画面を自動で調整してくれるAutoLayout機能について説明します。




2015年8月22日土曜日

【Xcode / Swift入門】ボタンやテキストのコーディング

本稿では、Xcodeの簡単な操作、特によく使用するボタンやテキストフィールドについて、簡単にコーディングをしていきます。

テキストフィールドとは、ユーザがテキストを入力するためのコンポーネント(部品)になります。ボタンは、ユーザがクリックするとなんらかのアクションを起こすコンポーネント(部品)になります。
今回は、ボタンを押したときのなんらかのアクションのところをコーディングしていきます。

今回の目標としては、前回作成した"Hello Xcode!!"というラベルの文字をテキストフィールドに入力された文字に変換するというアプリを作成したいと思います。

まずは、前回作成した"Hello Xcode"のプロジェクトを開きます。
Xcodeを立ち上げると、右側の”最近使ったプロジェクト一覧エリア”に前回作成した"Hello Xode"のプロジェクトが表示されていますので、そちらを選択します。
※前回の記事をご覧になられていない方は、こちらを参照し、"Hello Xcode"というラベルを作成してください。




User Interface(見た目)の設定

はじめに”見た目”の設定をしていきたいと思います。Main.Storyboardを開いて、前回同様ユーティリティエリアから、テキストフィールドとボタンをドラッグ&ドロップで配置します。テキストフィールドはサイズを変更(横延ばし)します。


はい!これで見た目は完成です。では、早速コーディングをしていきたいと思います。

コンポーネント(部品)のコード化


では、先ほど追加したテキストフィールドと前回作成したラベルをコーディングする際の変数として扱えるように設定します。

まず、Xcodeのツールバーのボタンよりエディタエリアを2画面表示にし、左側にMain.Storyboard、右側にViewController.swiftを表示させます。



次に、Hello Xcode!!のラベルをcontrolを押しながら右側のViewController.swift、つまりコードが書かれているエリアへドラッグ&ドロップします。この変数は、class ViewController内にて使用したいため、overrride func viewDidLoad()の上あたりに持ってくるようにしましょう。




すると、名前を定義する画面が出てきますので、connectionがoutletになっていることを確認し、Name欄に適当な変数名を入力します(今回は"label"という名前をつけたいと思います)。これは、コード内で使用するコンポーネントの名前がlabelで、外部定数として扱うということを意味します。そして、右下のConnectボタンを押すことにより、右側の欄に変数としての定義が追加されます。



次は、テキストフィールドの設定です。ラベルと同じようにドラッグ&ドロップします。



名前を定義する画面が出てきましたら、同じくconnectionがoutletになっていることを確認し、Nameを入力後、Connectボタンを押します。今回は、"textField"と名前をつけました。




【重要】ボタンを押したときの動作の設定


最後にボタンの設定です。ラベルやテキストフィールドと同様にボタンをドラッグ&ドロップでViewController.swiftに持っていきます。名前を定義する画面が出てきましたら、”connectionのoutletをActionに変更"します。つまり、今までは変数として、部品の設定をしていたのですが、今回は"Action(ボタンが押されたときの動作)"として設定することを意味しています。その後、Name欄を入力し、Connectを押します。



そうすると右側のコード欄に以下のような定義が生成されます。



    public class MainActivity extends Activity {

    @IBAction func button(sender: AnyObject) {
   
    //ボタンが押された際のアクション(動作)を
    //ここに記載していく

    }

このコードの{}内に記載されたコードが、ボタンが押されたときに動作するコードになります。では、この{}内に以下のように記載してみます。



   

    @IBAction func button(sender: AnyObject) {
   
     //ラベルにテキストフィールドの文字を代入(表示)する
     label.text = textField.text

    }

これは、ボタンが押されたら、テキストフィールドに記載された文字(textField.text)をラベルに表示(label.text)するということを記載したコードになります。

シミュレータでの動作確認


ここまでできたら、iPhoneシミュレータを起動してみます。

するとまずは、下記のようにHello Xcode!!という文字が表示されます。


では、試しにテキストフィールドに"Hello World!!"と入力し、ボタンを押してみましょう。


はい!上記の通り、ラベルがテキストフィールドに記載した文字に変わりました。


では次回は、テキストフィールド、ボタンを使って、簡単な四則演算つまり簡易電卓を作ってみたいと思います。




2015年8月20日木曜日

【Xcode / Swift入門】Interface Builderを使ってみよう

本稿では、Interface Builder(インターフェースビルダー)の簡単な使い方について説明致します。

Interface Builderとは、ボタンやテキストボックスなどの”見た目”を配置することができ、画面遷移など言わばアプリ開発の要である設計を、ソースコードなしでかつドラッグ&ドロップで作成することができます。

今回は、簡単な使い方ということで、”Hello Xcode!!”というテキストを画面に表示させたいと思います。

では、前回説明した通り、”Hello Xcode”というプロジェクトを作ってみましょう。

Xcodeを開いて、
Create a new Xcode project → Single View Application → product name を”Hello Xcode”としてCreate
としてみてください。

次に、表示されたプロジェクト画面のナビゲータエリアからMain.Storyboardを選択してください。そうするとエディタエリアに、下記のようなView Controllerが表示されると思います。これがアプリの見た目を配置していく画面となります。つまり、この画面がiPhoneのシミュレータの画面であり、アプリ公開後もこの画面通りにユーザにも見えるということになります。



まずは、画面が大きいので、iPhone5s用つまり4インチに変更したいと思います。下記の通り、4つの処理をする必要があります。





①ターゲットとなるView Controllerの指定
 表示されている四角枠の画面をクリックするとView Controller選択できます。今回は1画面ですが、今後画面が増えて行った場合にどの画面の”見た目”を変更するかを選択する必要があります。

②レイアウト変更
 ユーティリティエリアの下矢印のようなマークを選択してください。このマークがレイアウト変更の設定ができるボタンになります。

③サイズ変更
 Simulated MetricsのSizeが画面サイズの変更になります。4インチを選択してください。選択と同時に画面サイズが変わります。

④ビルドターゲットの変更
 こちらはビルドターゲットになります。デフォルトはiPhone 6になっているため、iPhone5Sに変更してください。
 ※iPhone6用のアプリを作成する場合は、そのままで結構です。作成したいアプリのターゲットに合わせて変更してください。


では、変更した4インチの画面に”Hello Xcode!!”と表示させたいと思います。

ユーティリティエリアの下の方に、”見た目”を作成するための部品が用意されています。



今回は、"Label"というテキストを表示させる部品を使いたいと思います。部品一覧よりLabelをドラッグ&ドロップでiPhone画面まで持っていきます。



そうすると、iPhone画面上に”Label”と表示されます。はい、これで見た目作成完了です!

あとは、この文字を変更したり、フォントサイズ、色を変えたりしていくだけの作業になります。

文字の編集は、Labelをダブルクリックして編集するか、右側のユーティリティエリアの”Text”欄へ直接文字を入力してください。Labelのサイズが小さくて文字が全て表示できないと思いますので、Label自体を選択して、サイズを大きくしてください。


次は、色やサイズ、配置の変更です。文字編集と同じくユーティリティエリアの”Color”で文字色を修正したり、"Font"では文字の大きさ"Alignment"では文字配置を修正できます。
そのほかにも行数や背景色などいろいろ設定ができますので、いろいろ試してみてください。



ここまで作成したら、Xcode上部のツールバーの再生ボタンよりビルド+iPhoneシミュレータを起動させてみましょう。

"Build Succeeded "と表示され、下記のようにiPhoneシミュレータが起動したら成功です。




次回は、ボタンとテキスとボックスについて説明し、簡単なソースコードを書いてみたいと思います。



2015年8月19日水曜日

【Xcode / Swift入門】Xcodeの使い方

本稿では、Xcodeを使ってプロジェクトを作成する方法について説明します。

まずはXcodeを開いてください。Xcodeを開くと、”Welcome to Xcode”という画面が表示されます。



この画面は、Xcodeのスタート画面になっており、画面左側では、Playground(「1-6. Playgroundを使ってみよう」にて詳細を説明します)を開いたり、新規プロジェクトの作成などができます。また画面右側では、最近使ったプロジェクトが表示され、プロジェクトへ簡単にアクセスすることが可能になります。今回は、新しくプロジェクトを作成しますので、”Create a new Xcode project”を選択してください。

次に、プロジェクトのテンプレートを選択する画面が表示されます。


各テンプレートの説明は以下になります。

■Master-Detail Application
 iPadやEmailなどに特化したアプリを作成する際に使用するテンプレートです。

■Page-Based Application
 複数のページが必要なアプリを作成する際に使用するテンプレートです。

■Single View Application
 単一のページ、もしくは、後からページを追加したい場合に使用するテンプレートです。(※このテンプレートを使用ことが多いです)

■ Tabbed Application
 タブを使ったアプリケーションを作成する場合に使用するテンプレートです。

■Game
 ゲームを作成する場合に使用するテンプレートです。


今回は、”Single View Application”を選択します。Single Viewと名前がついていますが、Xcodeが最初に作成してくれる画面がSingleなだけで、もちろん後から様々な画面の追加が可能です。とても使い勝手が良く、多く利用するテンプレートが、このSingle View Applicationになります。

次は、下記のようなプロジェクト名前入力画面が出てきます。




下記の内容を参照し、全ての項目を入力(選択)してください。

■Product Name
 アプリの名前を入力します。

■Organization Name
 会社名や製作者の名前を入力します。

■Organization Identifier
 アプリを識別するための名前を入力します。
 推奨は、"com.(Organization Name)"になります。

■Bundle Identifier
 自動で作成されます。

■Language
 ”Swift”を選択します。Objective-C or Swiftの選択が可能になっています。

■Devices
 iPhoneのアプリを作成しますので、"iPhone"を選択してください。

 ※Use Core Dataにはチェックをつけないでください。Core Dataについては、「3-3. データを保存してみよう」にて説明致します。


上記すべての入力が完了しましたら、"Next"を押してください。

すると、プロジェクトを保存する画面が表示されます。お好きなフォルダを選択し、”Create”を押してください。開発用のフォルダを事前に作成し、そこにまとめて保存していくことを推奨します。

次は、実際にアプリを作成するためのプロジェクト画面が表示されます。プロジェクトの画面は、ナビゲータエリア、エディタエリア、ユーティリティエリア、デバックエリアの4つの画面から構成されています。




各画面の説明は以下になります。

■ナビゲータエリア(画面左のエリア)
 アプリに必要なファイルやフォルダが表示されます。作成段階にすでに必要なファイルは生成されています。

■エディタエリア(画面真ん中のエリア)
 ソースコードを編集したり、ボタンやテキストボックスなど”見た目”からアプリを作成する際にも利用するエリアになります。また、複数の画面を使用する場合の画面遷移などもこのエリア内にて設定することができます。

■ユーティリティエリア(画面右側のエリア)
 文字の色やフォントの種類や大きさなどの設定をするエリアとなっております。また、アプリの”見た目”作成に必要な部品の選択などもこのエリアを使います。

■デバッグエリア (画面下のエリア)
 変数値の確認ができるソースレベルのデバックやエラー表示、println(よく使うので別途紹介します。)によるアプリの状況確認などの際に利用します。


Xcodeの上部には、ツールバーが用意されています。


一番右上のボタンは各エリアを隠したり表示したりすることができるボタンになっています。その横にある3つのボタンは、エディタエリアの画面表示切り替えボタンになっています。1画面表示、2画面表示、変更履歴表示などに切り替えることができます。

また左上の再生ボタンは、ビルド+iPhoneのシミュレータを起動するボタンになります。ボタンを押しビルドが成功すると、下記ような擬似的なiPhoneが起動され、アプリの動作確認を行うことができます。



また、シミュレータには便利な機能が具備されており、たとえば、よく使う機能としては、横画面表示が挙げられ、⌘+→を押すことにより横画面表示が可能です。(もしくは、Hardware内のRotate Left or Rotate Rightを選択することでも横画面表示可能です)。


では次回は、ボタンやテキストボックスなどアプリの見た目を作成するインターフェースビルダーについて説明したいと思います。