読者です 読者をやめる 読者になる 読者になる

Androidプログラミングブログ

Androidプログラミングを勉強していく中でわかったことをメモする

【Androidプログラミング入門 #003】テキストを入力し、ボタンを押すと、文章を作成し、ラベルに表示する

はじめに

ボタンを押したときに処理をさせることを勉強しました。
勉強したことを利用して、

テキストを入力し、ボタンを押すと、文章を作成し、ラベルに表示する

をやってみた。

BlankActivityでプロジェクトを作成しておきます。 そこから先を書いていきます。

1. 画面の作成

content_main.xmlファイルを開く。
プロジェクト作成時に自動で追加されているTextViewを削除し、
下記3つの画面パーツを追加します。 - ボタンを押すと作成される文章を表示するTextView - テキスト入力するEditText - ボタンButton

f:id:fjswkun:20151018211926p:plain

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto" 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"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:showIn="@layout/activity_main" tools:context=".MainActivity">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="未入力"
        android:id="@+id/textView"/>
    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView"
        android:hint="名前を入力してください。"
        android:id="@+id/editText"/>
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_below="@+id/editText"
        android:text="作成"
        android:id="@+id/button"
        />
</RelativeLayout>

2. ボタンを押したときの処理を書く

MainActivity.javaを開き、onCreateメソッドの一番下に下記追加する。

// textView 作成した文章の表示
final TextView textView = (TextView)findViewById(R.id.textView);
// editText テキスト入力欄
final EditText editText = (EditText)findViewById(R.id.editText);
// button ボタン
Button button = (Button)findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
    // ボタンを押したときの処理
    @Override
    public void onClick(View v) {
        String message = editText.getText() + " さん、こんにちは!";
        textView.setText(message);
    }
});

3. 実行

テキスト入力欄に入力し、ボタンを押すとTextViewに表示されます。 f:id:fjswkun:20151018212805p:plain

おわりに

上記手順でうまくいかなかった場合はこちらからサンプルソースを取得し、確認してみてください。 SampleButton.zip - Google ドライブ