Android開発入門Buttonイベントの実現方法(オリジナル)

6858 ワード

Buttonイベント実装の3つの方法について説明します
main.xml
Android开发入门 Button事件实现的方法(原创)
                               
                           

strings.xml
    Hello World, HelloWordActivity!    HelloWord
1つ目:
HelloWordActivity.java
package xyq.Android;import android.app.Activity;import android.graphics.Color;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.LinearLayout;import android.widget.TextView;import android.widget.Button;import android.widget.Toast;import android.view.View.OnClickListener;//import android.widget.TextViewpublic class HelloWordActivity extends Activity {   /** Called when the activity is first created. */            private Button btn1;    @Override    public void onCreate(Bundle abc)     {        super.onCreate(abc);               /*TextView tv=new TextView(this);        tv.setText(「こんにちは、アンドロイド!」);        Button btn=new Button(this);       //btn.setWidth(150);        btn.setText(「ボタン1」);        btn.setTextColor(Color.GREEN);        Button btn2=new Button(this);        btn 2.setText(「ボタン2」);        LinearLayout layout=new LinearLayout(this);        layout.addView(tv);        layout.addView(btn);        layout.addView(btn2);        this.setContentView(layout);*/                setContentView(R.layout.main);                btn1=(Button)findViewById(R.id.button1);
       //匿名クラスを使用したButtonイベントの登録          btn1.setOnClickListener(new OnClickListener  ()        {            //これは間違った方法です.on、Onではありません.            public void OnClick(View v)            {                Toast.makeText(HelloWordActivity.this、「ボタン1をクリックした」、Toast.LENGTH_LONG).show();            }            @Override            public void onClick(View v) {                //TODO Auto-generated method stub                Toast.makeText(HelloWordActivity.this、「ボタン1をクリックした」、Toast.LENGTH_LONG).show();            }        });    }
}
2つ目:
HelloWordActivity.java
package xyq.Android;import android.app.Activity;import android.graphics.Color;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.LinearLayout;import android.widget.TextView;import android.widget.Button;import android.widget.Toast;import android.view.View.OnClickListener;//import android.widget.TextViewpublic class HelloWordActivity extends Activity {   /** Called when the activity is first created. */            private Button btn1;    @Override    public void onCreate(Bundle abc)     {        super.onCreate(abc);               /*TextView tv=new TextView(this);        tv.setText(「こんにちは、アンドロイド!」);        Button btn=new Button(this);       //btn.setWidth(150);        btn.setText(「ボタン1」);        btn.setTextColor(Color.GREEN);        Button btn2=new Button(this);        btn 2.setText(「ボタン2」);        LinearLayout layout=new LinearLayout(this);        layout.addView(tv);        layout.addView(btn);        layout.addView(btn2);        this.setContentView(layout);*/
                setContentView(R.layout.main);        btn1.setOnClickListener(new ButtonClick());           }    
   //OnClickListenerに応答するクラスを作成     class ButtonClick implements OnClickListener
    {         public void onClick(View v)           {               switch (v.getId()) {               case R.id.button1:                   Toast.makeText(HelloWordActivity.this、「ボタン1をクリックした」、Toast.LENGTH_LONG).show();                  break;               default:                   break;               }           }             }}
 
3つ目:
ButtonコントロールにはonClickというプロパティがあります(プロパティパネルでは「On Click」と呼ばれます).このプロパティでクリックイベントを処理するメソッド名を設定し、アクティビティで実装できます.たとえば、ButtonコントロールのプロパティをonButtonClickに設定できます.XMLでは、このプロパティは次のようになります.
android:onClick="onButtonClick"

次に、アクティビティクラスでは、このメソッドを実装する必要があります.これは、単一のパラメータ(Viewオブジェクト)を持つ共通のvoidメソッドである必要があります.たとえば、次のボタンをクリックすると、Buttonコントロールがクリックされたときに画面にメッセージボックスが生成されます.
package xyq.Android;import android.app.Activity;import android.graphics.Color;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.LinearLayout;import android.widget.TextView;import android.widget.Button;import android.widget.Toast;import android.view.View.OnClickListener;//import android.widget.TextViewpublic class HelloWordActivity extends Activity {   /** Called when the activity is first created. */            private Button btn1;    @Override    public void onCreate(Bundle abc)     {        super.onCreate(abc);               /*TextView tv=new TextView(this);        tv.setText(「こんにちは、アンドロイド!」);        Button btn=new Button(this);       //btn.setWidth(150);        btn.setText(「ボタン1」);        btn.setTextColor(Color.GREEN);        Button btn2=new Button(this);        btn 2.setText(「ボタン2」);        LinearLayout layout=new LinearLayout(this);        layout.addView(tv);        layout.addView(btn);        layout.addView(btn2);        this.setContentView(layout);*/                setContentView(R.layout.main);    }        public void onButtonClick(View view)    {        Toast.makeText(this,「ボタン1をクリックしました」,Toast.LENGTH_SHOUT).show();    }}