Java入門

Android開発のためのJava入門 第4回「メソッドとは?」

ここまでの記事はこちら
 

今回は

  • Android Studio の使い方
  • メソッド

について紹介していきます。

第2回「プロジェクトの作成」で用意したプロジェクトを開いてはじめていきましょう。
 


 

 

Android Studio の使い方

まずはじめにAndroid Studio の使い方を簡単に説明します。

使いながら覚えていく方がわかりやすいと思うので、今の時点で必要な箇所を紹介していきます。

1. プロジェクトウィンドウ

まず画面左側が「プロジェクトウィンドウ」です。


 

ここでは

  • 新しくファイルを作成する
  • 編集したいファイルを開く
  • ファイルを削除する

などを行います。
 

現在「Android」なっているドロップダウンメニューから表示形式を変えることができます。


 

探したいファイルや目的よって切り替えることができますが、この講座ではデフォルトの「Android」にして進めていきます。

フォルダとファイルもたくさんありますが、今の時点では MainActivity.java と activity_main.xml の場所だけ確認しておいてください。

 
 

2. エディタ

次は画面右側の「エディタ」です。ここには現在編集中のファイルが表示されます。


 

タブをクリックすると編集するファイルを切り替えることができます。


 

activity_main.xml を開いてみてください。

ここはアプリのレイアウト、つまりユーザーから見える部分を作っていく場所です。

今は「Hello World」というテキスト(TextView)だけがある状態ですが、ここにボタンや画像などの要素を置いていくことでアプリの画面を作っていきます。

下の方に「Design」「Text」というタブがあります。


 

レイアウトの作成方法は「Design」「Text」の2つの方法から選ぶことができます。

デザインタブでは、Palette(パレット)からボタンやテキストを選んでドラッグ&ドロップをするだけで画面を作っていくことができます。


 
 

次は「テキスト」タブを押してください。

デザインタブにあった「Hello World」がテキストに変換されていますね。

このテキストを XML(Extensible Markup Language エクステンシブル マークアップ ランゲージ)と言います。

テキストタブではドラッグ&ドロップではなく、自分で XML を書いてボタンや画像などを置いていきます。


 
 

このようにレイアウトの作り方には「Design」「Text」の2種類があります。

どちらを使っても良いですが、この講座では「Text」タブを使用していきたいと思います。
 
 

「Hello World」を変更する

activity_main.xml がアプリのユーザーから見える部分であったのに対して、MainActivity.java は アプリの機能を作っていく場所です。

例えばクイズアプリを作るとします。

activity_main.xml には問題文や正解数を表示するための TextView を用意します。
そして MainActivity.java には、表示する問題文の作成や正解数を保存するためのコードを書いていきます。

練習として「Hello World」というメッセージを MainActivity.java から書き換えてみましょう。

準備

activity_main.xml を開いて、2行目を追加してください。

    <TextView
        android:id="@+id/myText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

 

MainActivity.java から activity_main.xml にある要素を見つけるために id を設定します。
 

次に MainActivity.java を開いて、6行目を追加します。

 

画像のようにTextViewの部分が赤くなり、青いメッセージが出るかもしれません。(表示されずに自動で追加される場合もあります。)

これは「android.widget.TextView」をインポートしてくださいという警告です。
 

青いメッセージが出ている状態で「alt」と「return」を同時に押してみてください。

警告が消えましたか?

コードを見てみると、5行目に import android.widget.TextView; が追加されているはずです。


 

MainActivity.java で TextView に関するメソッド(この後説明します)を使用するために、この import が必要になります。
 

findViewByIdは「idからビューを見つける」という意味で、findViewById() をメソッドと言います。

メソッドとは?

メソッドとは簡単に言うと「処理をまとめたもの」です。

メソッドには

  • 処理を行うだけのメソッド
  • 処理をして結果を返すメソッド

の2種類があります。
 

1. 処理を行うだけのメソッド

例として簡単なメソッドを用意してみました。

void sample() {
 // ここに処理を書いていきます。
}

 

void は空っぽという意味で「処理だけをする」メソッドに使います。
 

2. 処理をして結果を返すメソッド

「処理をして結果を返す」メソッドの場合は、void ではなく結果として返したいデータ型を書きます。

boolean sample() {
    // ここに処理を書いていきます。
    return true;
}

 

boolean とは true または false の値をもつデータ型です。(データ型については次回説明します。)

結果として返したいデータ型を指定して、そのデータ型の値を return で返します。このとき返す値を「戻り値」と言います。


 

3. 引数

メソッド内で使いたい値がある場合には()内に値を書くことができます。これを「引数」と言います。

void sample(引数1, 引数2) {
 // ここに処理を書いていきます。
}

 

先ほど書いた findViewById メソッドを見てみると、R.id.myText を引数として渡しています。

これは findViewById メソッド内の処理で R.id.myText が必要だからです。


 

findViewById メソッドの中を見てみましょう。

(Windows の場合は Ctrl を押しながらクリック、Mac の場合は command を押しながらクリックで調べることができます。)

public <T extends View> T findViewById(@IdRes int id) {
    return this.getDelegate().findViewById(id);
}

 

なんのこっちゃという感じですが、仕組みは先ほど紹介した例と同じです。

* public は修飾子と言います。次回以降の記事で紹介していきます。

 
findViewById メソッドはAndroid 側で用意されているメソッドですが、もちろん自分で作ることもできます。

 

今の時点でコードの内容は理解できなくて大丈夫です。

メソッドには

  • 処理を行うだけのメソッド
  • 処理をして結果を返すメソッド

があるということだけ覚えておいてください🙂
 
 

ボタンでも画像でも activity_main.xml の要素に対して、MainActivity.java から何か変更を加えたい場合は「id を設定して findViewById」という手順が必要になります。

アプリ開発で頻繁に使うので覚えておきましょう。

これで MainActivity.java から「Hello World」を変更する準備は完了です。

「Hello World」を変更する

「Hello World」を「こんにちは」というテキストに変えてみましょう。

15行目を追加してください。

 

TextView に表示するテキストを変更するために「setText メソッド」を使っています。

setText メソッドも調べてみると、このようになっています。

 
setText メソッドは void なので戻り値がないメソッドです。

 

アプリを実行する

アプリをエミュレータで表示してみましょう。

‘Run app’ ボタンを押します。

 

エミュレータを選択して「OK」を押します。


 

「こんにちは」と表示されれば成功です🙂

 
 

次に行うこと

次回は「変数とデータ型」について学んでいきましょう。

 
 

ABOUT ME
Sara
Sara
「わかりやすく・シンプル」をモットーに、携帯アプリ・ウェブアプリの作り方を紹介します。 独学でプログラミングを勉強をしている方、基礎は勉強したけれど次に何をすれば良いか分からない...という方のお役に立てるサイトを目指しています🙂

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です