2016年7月24日日曜日

東北TECH道場青森道場夏季3日目開催しました

東北TECH道場青森道場夏季3日目を、2016年7月23日(土)に、青森駅前の新町プラザ フリーカフェ新町(まちまちプラザ)で開催しました。



今回も高校生と大学生の道場入門者が十数名集まり、スタートを切りました。



今回は、オリジナルアプリを作るための練習です。
まず、これまで通り、Android Studioで、空のアクティビティを選んでプロジェクトを作り、実機を接続し、実機上で起動することを確認します。
次に、SourceTreeを使って、開発しているアプリのリポジトリを作成し、コミットします。
そして、GitLabにプロジェクトを作り、東北TECH道場青森道場のグループに共有します。
GitLabのプロジェクトを、SourceTreeでリモート・リポジトリに設定し、プッシュします。
この一連の流れが自然にできるようにマスターしましょう。


次に、講師の星孝哲さん((株)サマリー)から、Androidアプリのレイアウトについて解説がありました。
アプリを開発するには、レイアウトを使いこなすことが必要になりますので、よく理解しておきましょう。


そして、バーティカル(垂直)とホリゾンタル(水平)のリニア(線形)・レイアウトを組み合わせて、3x3の格子状のレイアウトを作成しました。
このときに、レイアウトのハイト(高さ)、ウィドゥス(幅)、ウェイト(比)などのプロパティ(属性)の値を適切に設定する必要があります。



それぞれの格子には、画像を表示させるため、3つずつイメージ・ビューをはめます。



Android Studioで、画像を使用するには、プロジェクトのappの中のresの中のdrawableの中に画像を入れます。このとき、画像の名前には制約があるので、注意しましょう。
そして、用意した画像をイメージ・ビューにはめていくと、アプリで3x3の格子に画像が表示されるようになります。



次に、この画像をクリックしたら、ランダムな画像を表示するようにします。
これまでボタンをクリックしたら反応するアプリを作ってきましたが、イメージ・ビューの場合も同様なプログラムでクリックしたときの反応を記述することができます。




3x3の格子状に配置された画像をクリックに反応させるのに、3x3=9回同じようなプログラムを繰り返し書くことは避けたいものです。
そこで、イメージ・ビューを表す変数を2次元配列で用意します。
そして、この配列をfor文などで繰り返し処理することで、同じプログラムを何回も書かなくても済みます。
また、画像のリソースについても、同様に2次元配列を用意します。
これらの配列は、プログラムの中のどのスコープ(範囲)で使用するかをよく考え、フィールドとして宣言するか、メソッドのローカル変数として宣言するかを決めましょう。

なお、無名クラスを用いてイベントリスナーを設定する場合、メソッドの引数はfinal修飾子が必要になります。



最後に、縦横斜めのいずれかが3つ揃ったら、メッセージを表示するプログラムを作るという課題に取り掛かりました。
そのために、まず、一番上の行が揃っているか否かを判定する方法を考えました。
このとき、直接、イメージ・ビューに設定されている画像を調べることは、あまり現実的ではありません。
そこで、盤面の状態を内部的にデータとして持つようにし、盤面のデータを使って揃っているか否かを判定したり、表示を行うようにプログラムを変更しました。



道場入門者のみなさんは、是非、一番上の行だけでなく、縦横斜めいずれかが3つ揃ったら、メッセージを表示するプログラムに取り組んでみてください。

さて、明日7月24日(日)は、いよいよ夏季4日目。
今回のような格子状のレイアウトを使って、どんなおもしろいアプリが作れるかを考えてきてください。
講師、道場主、スタッフ一応、楽しみにみなさんをお待ちしております。


0 件のコメント:

コメントを投稿