Webエンジニアに光明!MonacaでiPhoneアプリ開発

「Objective-Cわからない」「Javaわからない」
でも
「スマフォアプリが作りたい!!」
っていう悩めるWebエンジニア
de253ac0d3cabf344344ff3f9e2bfa49_s
救いの手を差し伸べてくれる存在。
それが、Monacaです!
Monacaを使えば、iPhoneアプリはもとより、Androidアプリも作れちゃう!


目次
1. Monacaって何?
2. お絵描きアプリを作ってみよう
3. ソースコード
4. ソースコードの解説
5. カンボジアでMonacaのアプリを作ってみて

 


1. Monacaって何?

突然ですが、皆さんMonacaをご存知ですか?
え?知らない?わからない?なにそれ美味しいの?

Monacaは今、話題のHTML5を用いたハイブリットアプリケーションを作れる
オンライン上の統合開発環境です。
設定不要で無料ですぐにコーディングできちゃいます。
ハイブリッドアプリケーションの開発に興味のある方は、
使ってみるといいかもしれません!!

知らなかった方は下の画像をクリック!

monaca
Monaca

 


2. お絵描きアプリを作ってみよう

Monacaを使って簡単なお絵描きアプリを作ってみましょう!

お絵描きアプリのイメージ

screen2

お絵描きノートみたいなアプリですね。
白い枠内をなぞることで線を描くことが出来ます。

 

screen1

下の赤、青、緑のボタンをタッチするとキャンバスに描く色を変えることができます。

 


3. ソースコード

index.html

style.css

 

 


4. ソースコードの解説

それではコードの解説をしていきます!

まずCanvasというのはHTML5から新たに追加された要素で、
ブラウザ上に図形を描くときに使います。

今回はこのCanvasを使ってアプリを作っていきました。

Canvasを使う場合、下のようにHTMLの中に要素として指定します。

この要素の指定範囲内でCanvasのパスが描かれます。

<canvas>〜</canvas>の中には<canvas>タグがサポートされてない
環境(例えばHTML4など)に表示する文字を記述します。

次にJavascriptですが、はじめにCanvasで線を描く実装を解説します!

上のコードではCanvasの初期化をしています。

2行目:<BODY>タグ内のCanvas要素のID(my-canvas)を取ります。
3行目:myContextに2Dコンテキストのオブジェクトを入れます。

ただの平面の線なので浮き出て見える3Dではなく2Dです。

4行目:パスの色を指定 初期の色は赤にしています。
5行目:線のサイズの指定

これらの指定をしていないとCanvasで線を描くことができません(泣)

このコードでは実際に線を描く実装をしています。

2行目:パスを開始しますよーって宣言
3行目:パスの開始位置 この場合はX軸がstartX、Y軸がstartYです。
4行目:パスの終了位置 この場合はX軸がendX、Y軸がendYになります。
5行目:パスを描きますよーって宣言

この2つのサンプルコードでCanvasの基本的な実装ができます!

次に画面をタッチしたときの実装、タッチイベントの実装コードです。

タッチをした時↓

2行目:タッチをした時のイベント
タッチをした時の処理はこの中に実装します
4行目:デフォルトのタッチイベントを避けます

例えば、Canvas上をタッチする時、タッチする場所にボタンなどのイベントを起こすものがあれば、「いや俺、その処理はしないッス」って感じでその処理をしません。

タッチしてドラッグした時↓

2行目:タッチドラッグした時のイベント
touchstartと同じように中にしたい処理を実装します。
このアプリではtouchmoveの処理をドラッグしている時に繰り返すことで、お絵描きの機能を実装しています。
on(“touchstart”, function(event) {})とon(“touchmove”, function(event) {})は両方ともタッチイベントの実装ですが、touchstartやtouchmoveのところをtouchendに変えると、タッチが画面から離れたときのイベントを取得することができます。

こんな感じで、簡単にお絵描きアプリを作ることができます。

この実装は色々と応用して使うことができると思うので、ハイブリッドアプリ開発をしてみたい方は是非、参考にしてみて下さい。

 

5. カンボジアでMonacaのアプリを作ってみて

最後に自己紹介させて頂きます。

14新卒の村崎がこの記事を書きました。
あっ「むらさき」って読みます。

あだ名はエヴァ初号機や猪木やアゴやカイジや
いろいろー・・・っとある訳ですが、
だいたい同期からはパーポーと呼ばれております。笑

ちなみにこのアプリをカンボジアの現地の学生と一緒に作っていました。
カンボジアでのMonacaの受けはよく、Monacaのハイブリッドアプリケーションとしての強みやオンラインで複数人での開発ができる利点はすごく興味を持ってくれたみたいで、今後は海外でも流行りそうな予感がしました!

また、Monacaはどんどんアップデートされて機能が随時追加されているので、
今後の展開が楽しみですね!
それではまた今度!!

 

村崎敏久

なんでも屋見習いKAIZEN事業部
主にMIERUKAの開発をしています。 営業、プログラミングの勉強、先輩をモデルにして動画作成、 飲み屋で寝る、鋭いツッコミ、ウケないボケをかましています。 MIERUKAでもっと関わりたいなー・・・。
このエントリーをはてなブックマークに追加