2014年2月23日日曜日

Xcodeのstoryboardを使って、UIButtonを押したときのイベントをソースとひもづける

ようやく、ようやくプログラミングの話。
とはいえ前回も実は試しにiOSプログラミングはしてたのだけど、望み通りのスクリーンショットがとれずブログに書けなかったのでした。。

さて、まずXcodeを使ってiOSプログラミングの基本の「き」。storyboardを使った話から始めよう。iOSはユーザの操作を受けて動作することがメインに行われる。つまり、ボタンを押したり文字を入力したり。そこをiOSが標準で扱ってくれる。ただし、画面に配置したボタンと実行する内容は自分で接続する必要がある。
今日のお題:「storyboardに配置したボタンとViewControllerを接続する」
いろいろ触っていて、気づいたところで2通りあった。
今回はテキストの中から文字列を探してハイライトする、というテストアプリを実例とする。

ボタンからViewControllerへ接続

下の画面のようにstoryboardで必要な部品を配置しておく。ここでは一番下の"Clear"ボタンをViewControllerのソースとひもづける。


まずはstoryboardを画面に表示しておいて、右上のアイコンにある下の丸で囲んだボタンを押す。


そうすると、下のように画面が左右に分割されるので、右側に接続したいViewControllerのヘッダファイルを表示させる。今回は"Clear"ボタンを接続したいので、"Clear"ボタンを選択・右クリックすると以下のように黒いメニューが出るから、「Sent Events」ー「Touch Up Inside」の右端の"+"を左クリックしてドラッグ、ヘッダファイルのInterface宣言部へ持っていく。


そうすると下のように接続情報の入力が求められるので、関数名を入れて「Connect」ボタンを押せば出来上がり。めっちゃ簡単。でもすぐ忘れる。(^^;


接続ができると、下のように関数が宣言され、その左横に灰色の丸印がつく。


ViewControllerからボタンへ接続

一方、ViewControllerにあらかじめ関数を宣言しておいてボタンに接続する方法もある。まだ接続されていない関数の左端は下の画面のように中抜きの灰色の丸印になっている。


これを左クリックしてドラッグ、接続したいボタンまで持っていく。これだけで終わり。


そうすると、以下のように「Touch Up Inside」イベントに接続される。


これらは基本中の基本だから、なにも考えずにさらっとできるように早くならないとね。



2014年2月11日火曜日

gitで管理しなくてもよい「Xcodeの管理ファイル」を対象外にするには

Xcodeが管理するファイルには、バージョン管理しなくてもよいものがあるそうで。
参考URL: Xcodeプロジェクト用の.gitignoreを作成する

.gitignoreファイルに以下を設定しておいた。
*.xcodeproj/*
!*.xcodeproj/project.pbxproj
!*.xcworkspace/contents.xcworkspacedata
.DS_Store

Xcodeからgithubを使う

やっとここまで来ましたね。さあ、コードを書こう!

Xcodeでgithubのリポジトリを登録

Xcodeからgithubを使えるようにするために、まずはリポジトリを登録する。

「Xcode」メニューの「Preferences...」を開く

開いたウインドウの「Accounts」を選択して左下の「+」を押す。メニューから「Add Repository...」を選択する

そして、出てきたテキストボックスに追加したいリポジトリのアドレスを入力して「Next」ボタンを押す

そうすると、以下のウインドウのようにリポジトリが左側に追加されるので、あとは「Uer Name」と「Password」を設定しておく

ちなみに、さっきのリポジトリのアドレスは、以下のように自分のgithubリポジトリページ右下から取得する

Xcodeで新規プロジェクトを作成

「FIle」メニューの「New」ー「Project...」を開く

これからiOSアプリを作って行くので、まずはテストがてら簡単なボタン操作のアプリを作ってみよう。ということで、「Single View Application」を選択する

ここはいつも悩むけど、とりあえず項目を埋めて「Next」

プロジェクトの保存先を決めたらはじまり!

「Source Control」メニューを見ると、以下のようにうまく接続できてることがわかる

2014年2月2日日曜日

gitのブランチ管理

せっかく始めるので、、といつもの気合い入れ過ぎ?!な状態ですが、まずはブランチ管理について。
これまでのCVS, subversion もそれほど大人数で触っている訳ではないので、なんとなくなタグ管理しかしてなかった。

てことで、まずは勉強。世間では「git-flow」と「GitHub Flow」が流行っているようだ。とりあえず以下のリンクをざっと見てみる。

git-flow

参考URL

A successful Git branching model」より引用
以下のブランチを用いる。
  • develop
  • feature
  • release
  • master
  • hotfix
git-flowをインストールするとgitにプラグインとして使えるようになり、git-flowを使うことでVincent Driessen氏が提唱するgit-flowモデルに従ったマージやコミットを裏でやってくれる。

GitHub Flow

参考URL
以下のブランチを用いる。
  • master
  • 作業を表す名称のブランチ

git-flowの場合は少し詳細に分かれ過ぎていて、個人で始めるには面倒な気がする。そんなに頻繁に上げないし、なによりも変更が衝突する相手がいない。なので、まずは「GitHub Flow」に従って始めてみようと思う。・・て、一人でプルリクエストって、ないかなぁ。