AndroidのButtonのいくつかのクリックの書き方
8952 ワード
私たちはButtonを使うとき、基本的にクリックイベントを設定して、特定の操作を処理します.では、Buttonのクリックイベントをどのように書きますか?
Buttonのいくつかのクリック
1つのButtonは1つの傍受に対応する
もし私たちがもっとButtonを持っていたら、私たちはこのように書き続けたら終わりです.もちろん、この方法はページのボタンが少ないときにこのように書くのに適しています.もしあなたのページに十数個のボタンがあれば、このように書くと頭が大きくなります.
すべてのbuttonはリスニングに対応し、OnClickListenerリスニングを書き換えます.
すべてのbuttonは1つのリスニングに対応し、OnClickListenerインタフェースを実現する.
ButtonのXMLコードにandroid:onClickプロパティ実装を追加
この方法はあなたのコードをはっきりさせ、コードの量を減らすことができますが、柔軟ではありません.
Buttonのいくつかのクリック
1つのButtonは1つの傍受に対応する
Button button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
もし私たちがもっとButtonを持っていたら、私たちはこのように書き続けたら終わりです.もちろん、この方法はページのボタンが少ないときにこのように書くのに適しています.もしあなたのページに十数個のボタンがあれば、このように書くと頭が大きくなります.
すべてのbuttonはリスニングに対応し、OnClickListenerリスニングを書き換えます.
public class TestActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
initViews();
}
private void initViews() {
Button button1 = (Button) findViewById(R.id.button1);
Button button2 = (Button) findViewById(R.id.button2);
button1.setOnClickListener(myListener);
button2.setOnClickListener(myListener);
}
View.OnClickListener myListener = new View.OnClickListener() {
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.button1:
Toast.makeText(TestActivity.this, " 1", Toast.LENGTH_SHORT).show();
break;
case R.id.button2:
Toast.makeText(TestActivity.this, " 2", Toast.LENGTH_SHORT).show();
break;
default:
break;
}
}
};
}
すべてのbuttonは1つのリスニングに対応し、OnClickListenerインタフェースを実現する.
public class TestActivity extends Activity implements View.OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
initViews();
}
private void initViews() {
Button button1 = (Button) findViewById(R.id.button1);
Button button2 = (Button) findViewById(R.id.button2);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()){
case R.id.button1:
Toast.makeText(TestActivity.this, " 1", Toast.LENGTH_SHORT).show();
break;
case R.id.button2:
Toast.makeText(TestActivity.this, " 2", Toast.LENGTH_SHORT).show();
break;
default:
break;
}
}
}
, , 。
ButtonのXMLコードにandroid:onClickプロパティ実装を追加
XML :
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:text="button1"
android:onClick="myClick"
android:layout_height="40dp" />
<Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:text="button2"
android:onClick="myClick"
android:layout_height="40dp" />
LinearLayout>
java :
public class TestActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test);
}
/**
* XML , java , findViewById, setOnClickListener,
* xml , ID 。
* public , 。
* */
public void myClick(View view){
switch (view.getId()){
case R.id.button1:
Toast.makeText(TestActivity.this, " 1", Toast.LENGTH_SHORT).show();
break;
case R.id.button2:
Toast.makeText(TestActivity.this, " 2", Toast.LENGTH_SHORT).show();
break;
default:
break;
}
}
}
この方法はあなたのコードをはっきりさせ、コードの量を減らすことができますが、柔軟ではありません.