android-单击事件的响应方法

来源:互联网 发布:linux系统如何使用 编辑:程序博客网 时间:2024/05/16 10:59

内部方法

1.  2. package com.example.dail;              import android.net.Uri;              import android.os.Bundle;              import android.renderscript.Int2;              import android.text.TextUtils;              import android.app.Activity;              import android.content.Intent;              import android.view.Menu;              import android.view.View;              import android.view.View.OnClickListener;              import android.widget.Button;              import android.widget.EditText;              import android.widget.Toast;              public class MainActivity extends Activity implements OnClickListener {                  private Button bt_dail = null;                  private EditText et_number = null;                  @Override                  protected void onCreate(Bundle savedInstanceState) {                      super.onCreate(savedInstanceState);                      setContentView(R.layout.activity_main);                      bt_dail = (Button) findViewById(R.id.bt_dail);                      et_number = (EditText) findViewById(R.id.et_number);                      bt_dail.setOnClickListener(new MyListener());                  }                  private void callPhone() {                      String number = et_number.getText().toString();                      if(TextUtils.isEmpty(number)) {                          Toast.makeText(MainActivity.this, "号码不能为空", 1).show();                      }                      Intent intent = new Intent();                      intent.setAction(Intent.ACTION_CALL);                      intent.setData(Uri.parse("tel:"+number));                      startActivity(intent);                  }                  private class MyListener implements OnClickListener{                      @Override                      public void onClick(View v) {                          // TODO Auto-generated method stub                          callPhone();                      }                  }              }

外部匿名类

package com.example.dail;

    import android.net.Uri;      import android.os.Bundle;      import android.renderscript.Int2;      import android.text.TextUtils;      import android.app.Activity;      import android.content.Intent;      import android.view.Menu;      import android.view.View;      import android.view.View.OnClickListener;      import android.widget.Button;      import android.widget.EditText;      import android.widget.Toast;      public class MainActivity extends Activity implements OnClickListener {          private Button bt_dail = null;          private EditText et_number = null;          @Override          protected void onCreate(Bundle savedInstanceState) {              super.onCreate(savedInstanceState);              setContentView(R.layout.activity_main);              bt_dail = (Button) findViewById(R.id.bt_dail);              et_number = (EditText) findViewById(R.id.et_number);              bt_dail.setOnClickListener(new OnClickListener(){                  public void onClick(View v){                      callPhone();                  }              });          }          private void callPhone() {              String number = et_number.getText().toString();              if(TextUtils.isEmpty(number)) {                  Toast.makeText(MainActivity.this, "号码不能为空", 1).show();              }              Intent intent = new Intent();              intent.setAction(Intent.ACTION_CALL);              intent.setData(Uri.parse("tel:"+number));              startActivity(intent);          }      }

在布局文件中定义click方法

  • 在xml 中对需要响应的事件添加方法

< Button

            android:onClick="btOnClick"              android:id="@+id/bt_dail"              android:layout_width="match_parent"              android:layout_height="wrap_content"              android:layout_below="@id/et_number"              android:text="@string/dail"

/>

在代码中对方法进行定义:

private void btOnClick(View v) {          callPhone();  }  private void callPhone() {          String number = et_number.getText().toString();          if(TextUtils.isEmpty(number)) {              Toast.makeText(MainActivity.this, "号码不能为空", 1).show();          }          Intent intent = new Intent();          intent.setAction(Intent.ACTION_CALL);          intent.setData(Uri.parse("tel:"+number));          startActivity(intent);  }

- 在主类后提供click接口,再在主类中实现接口的方法:

>  1. package com.example.dail;  >           >         import android.net.Uri;  >         import android.os.Bundle;  >         import android.renderscript.Int2;  >         import android.text.TextUtils;  >         import android.app.Activity;  >         import android.content.Intent;  >         import android.view.Menu;  >         import android.view.View;  >         import android.view.View.OnClickListener;  >         import android.widget.Button;  >         import android.widget.EditText;  >         import android.widget.Toast;  >           >         public class MainActivity extends Activity implements OnClickListener {  >           >             private Button bt_dail = null;  >             private EditText et_number = null;  >             @Override  >             protected void onCreate(Bundle savedInstanceState) {  >                 super.onCreate(savedInstanceState);  >                 setContentView(R.layout.activity_main);  >                 bt_dail = (Button) findViewById(R.id.bt_dail);  >                 et_number = (EditText) findViewById(R.id.et_number);  >                 bt_dail.setOnClickListener(this);  >             }  >             private void callPhone() {  >                 String number = et_number.getText().toString();  >                 if(TextUtils.isEmpty(number)) {  >                     Toast.makeText(MainActivity.this, "号码不能为空", 1).show();  >                 }  >                 Intent intent = new Intent();  >                 intent.setAction(Intent.ACTION_CALL);  >                 intent.setData(Uri.parse("tel:"+number));  >                 startActivity(intent);  >             }  >             @Override  >             public void onClick(View v) {  >                 callPhone();   >                 switch (v.getId()) >                 {    >                  case R.id.bt_dail:    >                   callPhone();>                   break;>             }  >         }
0 0
原创粉丝点击