• 検索結果がありません。

新規ライブラリーモジュールを作成する

ドキュメント内 Tech2_Vol6_Chap15_3kou.indd (ページ 40-45)

15 -3 -1

ライ ブラ リー 15

続いて表示される画面では「Add  No  Activity」を選択し、設定を完了してく ださい(図29)。

新規モジュールの作成が完了したら「settings.grade」を開いて設定を確認し ましょう(図30)。アプリのモジュールに加えて先程作成したライブラリーのモジュー ル名が追加されていれば成功です。

図28:ライブラリー名として「MyLibrary」を設定する

図29:「Add No Activity」を選択して「Finish」する

Calculatorクラスを追加する

 「Calculator」クラスは、足し算を行う「plus」メソッドを持つ単純なクラスです。

このクラスをライブラリーモジュールに追加しましょう。「mylibrary」モジュールの

「src」→「main」→「java」→「自分のパッケージ名」の上で右ボタンクリックして、

「New」→「JavaClass」を選んで「Calculator」クラスを作成します。リスト22 を参考に実装をしてください。

Calculatorクラスを使う

 「Calculator」クラスの「plus」メソッドを使って得た結果をTextViewに表示 してみましょう。まず、ライブラリーを使う方(app)のモジュールのディペンデンシーを 設定する必要があります。まず「File」メニューから「Project  Structure...」を選 んで、「app」モジュールの「Dependencies」タブを表示します(図31)。

ここで、右上の「+」ボタンをクリックして表示するメニューから「Module  depen dency」を選びます(図32)。

図30:「settings.grade」を開いて設定を確認する

リスト22Calculator.javaCalculatorクラスの定義)

package jp.techinstitute.t051.mylibrary;

public class Calculator {

public int plus(int a, int b) { return a + b;

} }

図31:「File」メニューから「Project Structure...」を選んで「Dependencies」タブを表示する

ライ ブラ リー 15

すると「Choose  Modules」というダイアログが表示されるので、その中の1つしか ない選択肢「:mylibrary」を選んで「OK」をクリックします(図33)。

この結果「Project  Structure」のウィンドウにも、選択した「:mylibrary」が追 加されました(図34)。

図32:「+」ボタンをクリックして

「Module dependency」を選ぶ

図33:「Choose  Mod ules」では「:mylibrary」

を選択する

図34:「Project Structure」の「Dependencies」タブにも「:mylibrary」が追加された

この結果は、「app」の「build.gradle」でも確認できます(図35)。もちろん、こ のファイルを最初からこのように編集しても同じことです。

以上のように設定したら、アプリケーションの「activity̲main.xml」をリスト23の ように編集します。

 アプリモジュールの「MainActivity」で使うレイアウトを次のリスト23のように 作成してください。

 次にリスト24のように「MainActivity」の実装を行います。

図35:ディペンデンシーの設定結果を「build.gradle」で確認する

リスト23activity_main.xml(「UseMyLibrary」のレイアウト)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:paddingLeft="@dimen/activity_horizontal_margin"

android:paddingRight="@dimen/activity_horizontal_margin"

android:paddingTop="@dimen/activity_vertical_margin"

android:paddingBottom="@dimen/activity_vertical_margin"

tools:context=".MainActivity">

<TextView

android:id="@+id/text"

android:textSize="40sp"

android:text="@string/hello_world"

android:layout_width="wrap_content"

android:layout_height="wrap_content" />

</RelativeLayout>

ドキュメント内 Tech2_Vol6_Chap15_3kou.indd (ページ 40-45)

関連したドキュメント