ボタンにクリックイベントを設定する
ボタンにクリックイベントを設定する2種類の方法です。まず、適当にボタンを2つ配置したレイアウトを作成します。
<サンプル画面>
下記のサンプルのようにコードを記述します。
<サンプルコード>
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Buttonのインスタンス(button)にボタンを登録
Button button1 = (Button)findViewById(R.id.button1);
//その1 ボタン1にクリックイベントを設定
button1.setOnClickListener(this);
//その2 ボタン2にクリックイベントを設定
findViewById(R.id.button2).setOnClickListener(this);
}
//ボタンがクリックされると呼び出される
@Override
public void onClick(View v) {
Log.d("Message;", "ボタンがクリックされました(ボタンID:" + v.getId() + ")");
}
}
ボタンをクリックすると「Android Monitor」にログが出力されます。
~ コード解説 ~
コード中の「その1」では、button1 のインスタンスにクリックイベントを設定していますが、「その2」では、インスタンスを作成することなく button2 に直接クリックイベントを設定しています。
どちらも同じ動作ですが、使いやすさを考えると少し面倒ですが「その1」の方がおすすめです。
END