前回(関連記事)解説したようにAndroidのアプリケーションは、アクティビティと呼ばれるオブジェクトから作られています。このアクティビティは、アプリケーションの画面に相当し、XMLで記述した画面を読み込んで表示します。今回はアプリケーション開発の基本となるこのアクティビティの作り方を解説します。このためには、Androidが提供するGUIエディター(レイアウトエディター)の使い方などをマスターしておく必要があります。アクティビティが持つ画面は、Viewと呼ばれるクラス(オブジェクト)です。レイアウトファイルには、このビューを1つだけ含むことができます。1つではなんにもできないと思われるでしょう。実際には、ビューには内部に複数のビューを含むことができる「ViewGroup」というビューがあるので、これを使うことで実質的に複数のビューを含むことができます。Activityの表示は単体のビューだが、中に複数のビューを格納できるViewGroupを使って階層構造を作る。ViewGroupには内部のビューを自動的に配置するLayoutと呼ばれるものがある。この中にテキストや入力ボックス、ボタンなどのビューを入れてActivityのビューを作るこのViewGroupには、以下のようなものがあります。●FrameLayout:枠を空けるためのレイアウトこのほかにViewGroupのサブクラスには「AdapterView」「SlidingDrawer」がありますが、使い方がちょっと違うので、ここでの説明は省略します。これらのクラスにはボタンなどの部品を配置するという役割があり、このために「Layout」というキーワードがあります。Androidに限らず、画面サイズが固定されていてはハードウェアの変化に対応することが困難ですし、製品のバリエーションが作りにくくなります。Androidは、本体の縦/横位置で表示の向きを切り替える機能もあります。この場合、解像度は同一でも見かけ上の縦横の解像度は変化します。このように解像度が変化する場合、ボタンやテキスト入力欄のようなものを、絶対座標で配置することはできません。解像度に合わせて、部品の位置やサイズを変化させる必要があります。このために使われる部品が「●●Layout」と呼ばれるクラスです。これらは、一定のルールで内部の部品を並べるようになっています。使うと思われるのが「LinerLayout」です。これは、内部に配置されたビューを縦または横に並べるものです。1つのLinerLayoutは、縦または横のどちらかの方向にしか並べることはできません。このため、複雑な配置を行なうには、これを入れ子にします。ボタンを2つ横に並べたければ、方向を横方向に設定したLinerLayoutの中にボタンを置き、このボタンの下にテキスト欄を並べたければ、外側に方向を縦にしたLinerLayoutを置きます。このような入れ子を作ることで、複雑な画面でも構成することが可能です。ほかにもいくつかのレイアウトクラスがありますが、まずは、LinerLayoutの使い方を覚えれば十分です。他のレイアウトに関しては、実際に使う必要があるときにリファレンスを参照してください。実際に画面に配置する部品このレイアウトの中に配置するビューは「widget」と呼ばれるクラスです。widgetは、Viewのサブクラスのうち、ユーザーインターフェースの部品となるものです。widgetとして多くの部品が定義されていて、その中には、ボタンやテキスト入力欄のような簡単なものから、メディア再生を制御するものなどさまざまなものがあります。前述のレイアウトもwidgetの1種です。このため、レイアウトの中にさらにレイアウトを入れて、ボタンなどの他のwidgetと同じように扱わせることができるわけです。developerのサイトにあるリファレンスページにあります。レコチョクがライブ公演をVRコンテンツとして収録VRでアートの鑑賞。スマホお気に入り一覧マイページ。