サイトのトップへ戻る

Android Studio ドキュメント 日本語訳

サイト内検索

テンプレートからコードを追加する

Android Studio ではAndroidの設計と開発者のベストプラクティスに沿ったコードテンプレートが用意されており、 美しく機能的なアプリの作成を手助けしてくれます。 テンプレートを使用して、新しいアプリモジュールや個別のアクティビティやその他特定のAndroid プロジェクトのコンポーネントを作成できます。

いくつかのテンプレートでは、ナビゲーションドロワーやログイン画面のような、一般的に使用される初心者用コードが用意されています。 最初にプロジェクトを作成する時や、 既存のプロジェクトに新規アプリモジュールを追加する時や アプリモジュールに新規アクティビティを追加する時に、これのアプリモジュールテンプレートとアクティビティテンプレートの中から選ぶことができます。

アクティビティに加えて、テンプレートを使って、既存にアプリにその他のAndroidプロジェクトコンポーネントを追加することもできます。 これらのテンプレートには、services やfragmentsといったコードコンポーネントと、フォルダーやXML ファイルといった非コードコンポーネントの両方が含まれています。

このページでは、アクティビティのようなAndroidプロジェクトコンポーネントをプロジェクトに追加する方法と、 Android Studioで使用可能なよく使われるアクティビティ・テンプレートについて説明します。 ほとんどのテンプレートはAndroid Support Libraryに依存しており、 マテリアルデザインに基づいたユーザーインタフェース原則が含まれています。



プロジェクトコンポーネントを追加する

図1File > Newの順にクリック、もしくは Project ウィンドウを右クリックすることで表示できるテンプレートメニュー。

Android Studioで用意されるテンプレートの一覧は 、絶えず増え続けています。 図1で示すように、Android Studioではテンプレートを ActivityXML ファイルなどの追加するコンポーネントのタイプごとにグループ分けしています。

テンプレートを使った Android プロジェクトコンポーネントを追加するには、Project ウィンドウを使用します。 新たにコンポーネントを追加したいフォルダーを右クリックし、Newを選びます。 クリックしたフォルダーに追加できるコンポーネントに基づき、図1に表示されているようなテンプレートタイプの一覧が表示されます。

追加したいコンポーネントを選ぶと、対応するウィザードウィンドウが表示されて、名前といったコンポーネントの設定情報の入力を求められます。 設定情報を入力した後、Android Studio は新しいコンポーネント用のファイルを作成して開きます。 また、Gradle ビルドを実行してプロジェクトを同期させます。

Android Studio の File > New メニューを使ってAndroid プロジェクトコンポーネントを新規に作成することも出来ますが、 Projectウィンドウで希望するディレクトリに移動すれば正しい階層にコンポーネントを作成できます。



アクティビティのテンプレートを選ぶ

テンプレートの最も一般的な使用法の一つは、既存のアプリモジュールに新規アクティビティを追加することです。 例えば、アプリユーザー用のログイン画面を作成するには、ログインアクティビティ・テンプレートを追加します。

この項目では、携帯アプリとタブレットアプリ用で一般的に使用されるアクティビティ・テンプレートについて説明します。 Android Studio では、 Android Wear・Android TV・Cloud App Engineを含む、様々な異なるタイプのアプリモジュールが用意されています。 アプリモジュールを作成する時に、これら異なるタイプのモジュールを表示することができます。 Google AdMobs Ads やGoogle Mapsのような、API固有のモジュールやアクティビティ用のテンプレートもあります。

以降の携帯・タブレット用テンプレートでは、アカウントへのログインや詳細項目の一覧表示や長文のスクロールといった、特定の使用状況向けのコードコンポーネントが使用できます。 それぞれのテンプレートは、アプリモジュール全体として、または個別のアクティビティとして機能します。



基本アクティビティ

このテンプレートは、アプリバーとフローティングアクションボタンが付いたシンプルなアプリを作成します。 これは一般的に良く使われるUIコンポーネントを提供し、プロジェクトの開始点として動作します。

このテンプレートは以下を含みます:

  • AppBar
  • FloatingActionButton
  • 二つのレイアウトファイル:一つはアクティビティ用、もう一つはテキストコンテンツ用


空のアクティビティ

このテンプレートは、空のアクティビティと、シンプルなテキストコンテンツが付いた一つのレイアウトファイルを作成します。 これを使うと、アプリモジュールやアクティビティをゼロから作成できます。

このテンプレートは以下を含みます:

  • テキストコンテンツが付いた一つのレイアウト


フルスクリーンアクティビティ

このテンプレートは、メインのフルスクリーンビューと標準のユーザーインタフェース (UI)コントロールを持つビューを切り替えるアプリを作成します。 フルスクリーンビューが既定で、ユーザーは端末の画面をタッチすることで標準ビューを有効化できます。

このテンプレートには以下が含まれます:

  • 標準のビューエレメントを隠すためのタッチリスナー実装
  • 標準ビュー内に表示されるが特に何もしないボタン
  • 標準ビュー用のAppBar
  • フルスクリーンビューと標準ビューエレメント用Framelayoutの両方が入った一つのレイアウトファイル


ログインアクティビティ

このテンプレートでは標準のログイン画面を作成します。これのユーザーインタフェースには、Eメールとパスワードを入力する欄、ログインボタンが含まれています。 これはアプリモジュール全体のテンプレートとしてよりも、アクティビティ単体のテンプレートとしてよく使用されます。

このテンプレートには以下が含まれます:

  • メインのユーザースレッドとは別のスレッドでネットワーク処理を行うためのAsyncTask 実装
  • ネットワーク処理時の進捗状況バー
  • 推奨されるログインUIが付いた一つのレイアウトファイル:
    • Eメールとパスワードの入力欄
    • ログインボタン


マスター/詳細 フロー

このテンプレートでは、項目の一覧と各項目の詳細を両方表示するアプリを作成します。 一覧画面にある一覧をクリックすると、クリックした項目の詳細画面が開きます。 二つの表示部分のレイアウトは、アプリを実行する端末によって異なります。

このテンプレートには以下が含まれます:



このテンプレートでは navigation drawerメニューの付いた 基本アクティビティ を作成します。 ナビゲーションバーはアプリの左側か右側に展開され、通常のアプリバーと合わせて表示されます。

このテンプレートには以下が含まれます:

  • DrawerLayout, 対応するイベントハンドラ、例のメニューオプションが付いた、ナビゲーションドロワー実装
  • AppBar
  • FloatingActionButton
  • 基本アクティビティテンプレート用のレイアウトファイルに加え、ナビゲーションドロワーと ナビゲーションドロワーヘッダのレイアウトファイル


スクロールアクティビティ

このテンプレートでは、折りたたみツールバーと長文用スクロールビューが付いたアプリを作成します。 ページをスクロールダウンすると、ヘッダーとして動作しているツールバーは自動的に縮まり、フローティングアクションボタンは非表示になります。

このテンプレートには以下が含まれています:



設定画面用アクティビティ

このテンプレートでは、アプリの ユーザーの環境設定や設定 を表示するアクティビティを作成します。このアクティビティは PreferenceActivityクラスを継承して作られており、アプリモジュール全体のテンプレートとしてよりも、アクティビティ単体のテンプレートとしてよく使用されます。

このテンプレートには以下が含まれます:

  • PreferenceActivityを継承したアクティビティ
  • 表示する設定を定義するためのXML ファイル(プロジェクトの res/xml/ ディレクトリ内にあります)


タブ型アクティビティ

このテンプレートでは、複数の項目、スワイプナビゲーション, アプリバーが付いたアプリを作成します。 各項目はフラグメントで定義され、画面を左右にスワイプすることで移動することができます。

このテンプレートは以下を含みます:

  • AppBar
  • FragmentPagerAdapter を継承して作られ、各項目のフラグメントを作成するアダプター
  • ViewPager インスタンス。各項目間のスワイプを司るレイアウトマネージャーです。
  • 二つのレイアウトファイル: 一つはアクティビティ用。もう一つは個々のフラグメント用