1ヶ月でWebデザイン・プログラミングスキルをオーダーメイドのカリキュラムで学べるスクール、それがWebCamp。

「数億規模スタートアップのCTO講師」と「エンジニアキャリア専門のポテパン」が贈る、実践型Rubyスクール。

【Android入門】アプリ開発環境「Android Studio」でアプリの画面を作成しよう!

Pocket

Androidアプリで作る上で最初に行うのが画面の作成です。Android Studioではボタンやテキストボックスを直感的に配置して作成したり、XMLを用いてテキストでデザインしたりすることができます。

今回はAndroidアプリの画面を作成する方法について説明します。

レイアウトとは

Androidアプリの画面作成はレイアウトを用いて行います。レイアウトとはボタンやテキストボックスといったウィジェットを配置するものです。レイアウトはxmlファイルで保存されます。

コンポーネントを配置する

実際にレイアウトで画面を作成してみましょう。Android Studioを起動し、新しくプロジェクトを立ち上げるとxmlファイルとjavaファイルが1つずつ作られます。そのうちのxmlファイルがレイアウトです。今回の例ではactivity_main.xmlファイルです。

activity_main.xmlファイルを選択して編集エリアに表示させ、画面を作成していきます。画面の作成は「Designビュー」と「Textビュー」の2つ表示形式から選択して行えます。ビューの切り替えは左下のタブからいつでも行えます。

Designビューで配置する

Designビューでは作成中の画面のプレビューが表示され、そこに直感的にボタンなどのウィジェットを配置して画面を作成していきます。

左側の「palette」には配置できるウィジェットが置かれており、そこからドラッグ&ドロップすることで配置できます。

Paletteの下にある「Component Tree」はレイアウトとウィジェットの階層構造を表しています。この例の場合はactivity_main(RelativeLayout)に沿ってtextViewとbuttonが配置されているのが分かります。

右側にあるPropertiesは選択しているコンポーネントの設定項目です。表示される項目はレイアウトやウィジェットによって異なりますが、文字サイズを変更したり、背景色を変更したりといったことが可能です。

Textビューで配置する

TextビューはXMLファイルを直接編集することで画面を作成していきます。Designビューでドラッグ&ドロップで行われていた配置や、Propertiesで行っていたコンポートネントの設定などをすべて手入力で行います。少し手間ですが細かい調節がしやすいですし、レイアウトやウィジェットの階層構造を確認しやすいです。

DesignビューとTextビューは表示形式や操作が違うだけで行っていることは同じです。Designビューでウィジェットを配置すれば、Textビューにもそのウィジェットの情報が書き込まれますし、Textビューでxmlを編集してウィジェットを追加した場合はDesignビューの画面にもウィジェットが配置されます。

レイアウトの種類

ボタンやできストボックスなどのウィジェットはレイアウトに沿って配置されます。レイアウトにはいくつか種類があり、作りたい画面に合わせて使い分けることができます。ここでは、よく使われるレイアウトを紹介します。

LinearLayout

配置されたコンポーネントを一定の方向に並べるときに使うレイアウトです。プロパティのorientationで並べる方向を変えられます。縦方向の時は「Vertical」、横方向の時は「horizontal」にします。

RelativeLayout

配置されたコンポーネントを他のコンポーネントと相対的に配置するレイアウトです。コンポーネント同士の配置関係を崩さず移動することができます。

GridLayout

コンポーネントを格子状に配置する際に使います。表を作成したり、ボタンを電卓のように配置したりするのに便利です。

サイズの指定方法

レイアウトやウィジェットはサイズを自由に指定することができます。サイズの指定方法は大きく分けて2つあります。

match_parentとwrap_content

レイアウトやウィジェットのサイズに「match_parent」と「wrap_content」の2つを指定することができます。

match_parentは親となるコンポーネントと同じサイズにする指定方法です。例えばtextView(テキストを表示するウィジェット)をLinearLayoutに配置して横の長さを「match_parent」にした場合は、textViewの横の長さがLinearLayoutと同じになります。

wrap_contentはそのコンポーネントの中身を表示するのに必要最低限のサイズにする指定方法です。コンポーネントの中身に合わせて自動的に変えてくれます。

例えばtextViewの横の長さをwrap_contetnにした場合はTextViewに表示されるテキストの長さによってtextView自体の長さが変わります。さきほどまでは「Hello World!」でしたが文字を追加して「Hello World, Good Morning World!」とすると、その分だけtextViewが伸びているのが分かります。

固定値

match_parentとwrap_contentの他にも、「300」や「1000」といったように固定値で指定することもできます。こちらのほうが分かりやすくて簡単です。ただし、指定する際には単位が必要で、文字のサイズを指定するときは「sp」、それ以外にレイアウトやウィジェットのサイズを指定するときは「dp」という単位をつけます。

おすすめ記事

Android(アンドロイド)アプリ開発を学べるスクール15選
Android(アンドロイド)アプリの本・参考書の評判

投稿者:プロスタ編集部

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

初心者がプログラミングで挫折しない学習方法を無料動画で公開中。オンラインに特化したプログラミングスクール「TechAcademy(テックアカデミー)」が解説。

この記事が気に入ったら
いいね!しよう

プロスタの最新情報をお届けします

あわせて読みたい

関連記事

おすすめスクール

システムアーキテクチュアナレッジ

システムアーキテクチュアナレッジ システムアーキテクチュアナレッジでは、ITスクールとしては珍しく正規雇用かつ現役のエンジニアが講師を務めています。「責任を持ったIT教育」をテーマに、未経験者をプロフェッショナルに育てます。
ページ上部へ戻る