ボタンの 4 つのクリック応答方法の概要

ボタンの 4 つのクリック応答方法の概要

ボタンは頻繁に使用されます。ここでは、イベント処理メソッドを整理し、実装方法が多数あることを発見しました。私は 2 番目の方法を好みます。皆さんはどうですか? 最もよく使用する方法はどれですか?

実装1:


コードをコピー
コードは次のとおりです。

ボタン bt_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(新しいOnClickListener()
{
@オーバーライド
パブリックvoid onClick(View v)
{
//クリックイベントに応答する
//.......
}
});

実装2:


コードをコピー
コードは次のとおりです。

ボタン bt_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(リスナー);
プライベートOnClickListenerリスナー = 新しいOnClickListener(){
@オーバーライド
パブリックvoid onClick(View arg0) {
// TODO 自動生成されたメソッドスタブ
スイッチ(arg0.getId()){
ケース R.id.bt_Demo:
//クリックイベントに応答する
//.......
壊す;
デフォルト:
壊す;
}
}
}

実装3:


コードをコピー
コードは次のとおりです。

ボタン bt_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(新しい ButtonListener());
プライベートクラスButtonListenerはOnClickListenerを実装します{
@オーバーライド
パブリックvoid onClick(View arg0) {
//クリックイベントに応答する
//.......
}
}

実装4:


コードをコピー
コードは次のとおりです。

//Activity で OnClickListener インターフェースを直接使用します。
android.view.View.OnClickListener をインポートします。
パブリッククラスMyActivityはActivityを拡張し、OnClickListenerを実装します{
@Override public void onCreate(バンドル savedInstanceState) {
super.onCreate(保存されたインスタンス状態);
R.layout.main のコンテンツビューを設定します。
//ボタン
ボタン bt_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(これを);
}
//クリックイベントに応答する
パブリックvoid onClick(View v) {
スイッチ (v.getId()) {
ケース R.id.bt_Demo:
//クリックイベントに応答する
//.......
壊す;
デフォルト:
壊す;
}
}
}

非常に包括的な要約をありがとうございます。私はこれらすべてを知っていますが、自分で要約する能力がありません。

<<:  ウィンドウ内のさまざまな距離/スクロール距離の正確な計算の概要

>>:  CSS3 でテキストマーキーを実装するためのサンプルコード

推薦する

CSSはフロートをシミュレートして、画像の左右を囲む中央テキストの効果を実現します。

画像の周囲にテキストを折り返すとは何ですか?これは次の図の効果です。 エフェクトのCSSコードはここ...

HTMLからPDFへの変換のための純粋なクライアント側と純粋なサーバー側の実装ソリューション

必要ユーザーがフォームに入力して「保存」をクリックすると、PDF ドキュメントを直接ダウンロードでき...

Tomcat が応答データグラムを書き戻すタイミングの詳細な分析

疑問が生じるこの質問は、ファイルのダウンロードを記述しているときに発生しました。HttpServle...

Python の MySQL データベース LIKE 演算子の詳細な説明

LIKE 演算子は、列内の指定されたパターンを検索するため、WHERE 句で使用されます。文法: 列...

js タグ構文の使用法の詳細

目次1. ラベルステートメントの紹介2. ラベルステートメントの使用序文:日常の開発では、プログラム...

Vueは複数のカウントダウンを同時に設定する機能を実装しています

この記事の例では、複数のカウントダウンを同時に設定するためのVueの具体的なコードを参考までに共有し...

TS 数値区切り文字とより厳密なクラス属性チェックの詳細な説明

目次概要演算子の改良と正確なinstanceofよりスマートなオブジェクトリテラル推論固有のシンボル...

mysql を解決: エラー 1045 (28000): ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワードの使用: NO/YES)

1. 問題時々Mysqlにログインしてパスワードを入力すると、この状況が発生しますmysql -u...

ブログデザイン ウェブデザイン デビュー

私がデザインした最初の Web ページは次のとおりです。 私はこの業界に7年間在籍し、プログラミング...

ReactでCSSをエレガントに書く方法

目次1. インラインスタイル2. インポート方法を使用する3.cssモジュールのエクスポート4. ス...

MySQLデータベースに中国語の文字を保存するときに発生するエラーを解決する方法を教えます

目次1. 遭遇した問題2. 問題を分析する3. 本当の問題4. 解決策5. ソリューション効果1. ...

Reactフックの仕組み

目次1. React フックと純粋関数2. シンプルなmyUseState 3. myUseStat...

vue.js でよく使われる v 命令の解析

目次Vue でのモデルバインド表示の if の v-text の説明v-html: v-オンv-if...

ウォーターフォールフローレイアウト(無限読み込み)を実現する js

この記事の例では、ウォーターフォールフローレイアウトを実装するためのjsの具体的なコードを参考までに...