リスナーを使ったイベント処理

リスナーとイベント

ボタンなどを押したときになにか処理をさせたい場合、ボタンとその処理の間を結ばなければなりません。この実行される処理をイベントと呼び、ボタンと処理をつなげるものをリスナーといいます。

では、イベントの使い方をボタンを押したときにそのボタンのテキストを変える例を引き合いにして説明します。

MainActivity.java
package com.MyApp.myapp;

import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.Button;

public class MainActivity extends Activity 
{
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        Button button = (Button)findViewById(R.id.button);
        
        button.setOnClickListener(new View.OnClickListener() 
        {
            public void onClick(View v) 
            {
                //ボタンが押されたときに呼ばれる処理
                button.setText("clicked");
            }
        });
    }

}

ここではsetOnClickListene関数にOnClickListenerリスナーを渡すことでボタンがクリックされたときのイベントをonClickメソッド内で実装しています。

ここで使われたリスナーはメンバ関数が宣言されているだけのクラスのようなものでその中身は好きに定義できます。

これでボタンがクリックされたらonClick関数が呼ばれボタンが押されたときの処理が実行されます。

以上がリスナーの使い方です。ボタン以外でもリスナーはいろいろな場面で使われるのでとても重要な技法です。

関連項目
プライバシーポリシー