プログラミング初心者の勉強日記

日々思ったこと、自分の勉強内容のことを記事にしていきます。

ボタンアプリを作ったので解説

挨拶

こんにちは、さとしです。

本日は、AndroidStudioを用いてボタンアプリを制作したので

制作手順をお伝えしていきます。

 

 

f:id:kakashim:20210208190853j:plain

 

今回の内容

・AndroidStudioのプロジェクト作成方法

・下記の写真のようなボタンを押すと、

 「Hello」と「World」が交互に出てくるアプリが作成

以下は制作手順になります。

 

f:id:kakashim:20210303202906p:plainf:id:kakashim:20210303202910p:plain

 

 

 

Step1 プロジェクトの作成

 
Android Studio から「Create New project」を選択します。
 
as4.1 - Android の Button アプリを作ってみると簡単だった
 
あるいは既にプロジェクトが表示されているのであれば
「File」「New」「New Project…」
を選択して新規プロジェクトを開始できます。
 
「File」「Close project」では一旦プロジェクトを終了させてTop画面に戻ることもできます。

 
Activityのタイプを選定:
Empty Activity が使いやすいです。

選択が終わったら「Next」

 

as4.1 02 - Android の Button アプリを作ってみると簡単だった
 
プロジェクトの名前を入れます。
例: Button プロジェクトを作成する場合(分かりやすくしましょう

  • Name: Button
  • Package name: example.com
  • Save location: アプリプロジェクトを保存する場所
  • Language: Java
    KotlinかJavaの開発言語の選択 ※今回はJavaを使用します。
  • Minimum API Level: API 30: Android 11.0 (R)
    後からMinimum SDKを build.gradle から変えることもできます

記入が終わりったら「Finish」をクリック

as4.1 button 01 - Android の Button アプリを作ってみると簡単だった
 
プロジェクトが完成しました。
 
button 04 1 - Android の Button アプリを作ってみると簡単だった

 

 

 

 

Step2 MainActivityを記入

 
コードを記述していきます。
プロジェクトが作成されると「Project」のTAGで階層が表示されます。
主に MainActivity.java と activity_main.xml を使います。
 
as4.1 button 02 - Android の Button アプリを作ってみると簡単だった
 
Java のコーディングは MainActivity.java にします。Empty Activityを選んだので、ある程度の基本的なコードは既に入っています。
 

 
activity_main.xml にはレイアウトを記述
やり方としては、

  • 「Design」を使って画面上にUIパーツを配置する
  • 「Code」で全てコードで記述

「Design」ではレイアウトの配置全体をデザイン的に決めていくには便利です。
レイアウトの種類に応じて設定方法がことなりますが、デフォルトのConstraintLayoutの使い方は慣れないと初めはわかりにくいかもしれません。

右上の3つ並んだアイコンで「Code」「Split」「Design」の切り替えができます。
 
as4.1 button 03 - Android の Button アプリを作ってみると簡単だった
 
「Code」は並んだアイコンの左端です。
微調整も含めた細かな設定はコーディングがいいでしょう、またネットにある開発情報の多くがコードです。
 
as4.1 button 04 - Android の Button アプリを作ってみると簡単だった
 
MainActivity.javaの onCreateメソッドにボタンを設定する記述をします。

 
ここで、エラーが表示されますが後でコードを正しく追加すれば消えます。
あるいは、エラーとなっているところにこのようポップアップが出た場合は、エラー部分にマウスを置いて「Alt+Enter」を行うと自動的に以下の行が追加されます。(MacWindowsではコマンドが異なります)
 

 
button a01 - Android の Button アプリを作ってみると簡単だった

また、R.id.button がエラーになっていますが、後でレイアウトの設定をすれば解消します。
 
 

setContentView:

Screenにテキスト、ボタン、画像を表示させる仕組みで SetContentView() は最終的にViewをまとめるところです。

TextViewなどのViewを何種類かある Layout に設定し、

それを SetContentView() に入れます。

setcontentview 01 - Android の Button アプリを作ってみると簡単だった

ファイルでは(LinearLayoutの例)

  

 
既にこれが記述されていて、これが activity_main.xml ファイルをレイアウトとして登録し表示する設定です。
 

 
これはリソースの(レイアウトファイル)からid が button のものを見つけてくることを意味します。
findViewById
 
次に TextView を設定します。このケースではTextViewは事前に onCreate() の前に作成します。
private TextView textView;

onCreate() の中に
textView = findViewById(R.id.textView);
 
その後に、ボタンがタップされた事が分かるようにリスナー登録します。

OnClickListener():
リスナー、つまりアプリが起動中に、ユーザーがボタンをタップしたイベント発生を聞き耳を立てているというようなことでしょうか。
 

ボタンがタップされた時の挙動を決めます。
ボタンタップされるとフラグのbuttonTapを判別して

  • trueなら「Hello」
  • falseなら「World」

が表示されるコードです
setText() でTextViewの文字列を設定
 

 
importをいくつか追加して、とりあえずコードをまとめるとこうなります。
 
MainActivity.java

 

この状態ではまだエラーがありますがレイアウトファイルを設定すれば解消します。

package com.example.testbutton;

  

 

 
 

 Step3 MainActivityを記入する

 
レイアウトを設定します。
フォルダ res 以下の layout に activity_main.xmlファイルがあります
 
MainActivity.java では button と textView を呼び出していますのでそれをここに作成します。デフォルトでは「ConstraintLayout」が設定されています。
ボタンのIDは以下で定義されています
android:id=”@+id/button”
TextViewも同様です
android:id=”@+id/text_view”
 
またTextViewの垂直方向の位置調整で
app:layout_constraintVertical_bias=”0.4″
と設定します。
またButtonは
app:layout_constraintVertical_bias=”0.6″

 
..\res\layout\activity_main.xml

 

 
 

 Step4 アプリを動かす

 
実際のAndroidで実行させてみましょう。PCのスペックが低くなければエミュレーターで確認できます。

エミュレーターの立ち上がりに時間がかかるようであれば実機を使います。 
Macの場合はこのドライバーの設定は必要ありませんが、スマホUSBデバッグを有効にする必要があります。
 
エミュレーターを選択し
メニューから「Run」->「Run ’app’」とするか
三角のアイコンをクリックするとビルドが始まります
 
as4.1 05 - Android の Button アプリを作ってみると簡単だった
 
あまりレイアウトはぱっとしませんが
とりあえず、ボタンを押すとテキストが変わるアプリができました
 

as4.1 button 06 - Android の Button アプリを作ってみると簡単だった

 
 

 

Step5 改造案

今回制作したアプリのコードを書き換えて遊んでみました。

自分が実施したのは、以下になります。

 

・「Hello」「World」の部分を書き換えてみる

・ボタンのサイズ・色を変えてみる。

・「Button」の表示を変えてみる

 

 

 

終わり

今回は以上になります。

コメント等いただけると嬉しいです。

観ていただきありがとうございました。