【Android Studio】Javaで無名リスナーの宣言方法
Android StudioのJavaを使って無名リスナーの宣言方法を説明していきたいと思います。どのAPIレベルにまで対応しているかわかりませんがAPIレベル28では実行することができました。
AndroidManifestの設定
今回はAndroidManifestに入力するコードはありませんので入力しないで大丈夫です。
layoutの設定
次にlayoutに入力するコードです。上から2行目にある「androidx.constraintlayout.widget.ConstraintLayout」だけ消去して代わりに「LinearLayout」を入力します。
「tools:context=".MainActivity"」と「>」の間で改行し、「android:orientation="vertical"」を入力してください。
「TextView~/>」は使わないので消去し、代わりにこちらを入力してください。
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="無名クラス:ボタン1" />
無名リスナーの場合は、id名が必須なので「android:id="@+id/button"」をボタンごとに宣言してください。
Javaの設定
最後にメインであるJavaに入力するコードです。
findViewById(R.id.button1).setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(MainActivity.this, "無名クラス:ボタン1が押されました。", Toast.LENGTH_LONG).show();
}
}
);
ボタンが押されたらToastが表示されるようにしました。
無名リスナーの場合は、入力しなければいならない場所が1か所で済むためとても分かりやすく、よく使われます。これは覚えておくと良いでしょう。
まとめ
今回は、無名リスナーの宣言方法を説明していきました。私も作り直しながら説明していったのでエラーや、入力ミスはないようにできていると思います。この方法で取得できなかった場合はコメントください。できる限り対処していきたいと思います。
アプリ開発は調べることがほとんどです。私はこのプログラムを作るまでにたくさんのサイトを見て回ることになってしまいました。皆さんには同じ思いをしてほしくないのでこのプログラムが役に立つことを祈っています。