在Android应用中利用onClick实现单击事件的方法有哪些-创新互联

本篇文章给大家分享的是有关在Android应用中利用 onClick实现单击事件的方法有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

目前创新互联建站已为上1000+的企业提供了网站建设、域名、虚拟主机、网站托管、服务器托管、企业网站设计、临洮网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

这里使用四种onClick单击事件,来实现电话拔号器的DEMO。

XML文件

 

第一种、匿名内部类:

protected void onCreate(Bundle savedInstanceState) { 
 super.onCreate(savedInstanceState); 
 setContentView(R.layout.activity_main); 
 Button bt_dial = (Button) findViewById(R.id.bt_dial); 
 bt_dial.setOnClickListener(new View.OnClickListener() { 
  @Override 
  public void onClick(View view) { 
   dialPhone(); 
  } 
 }); 
}

第二种、自定义单击事件监听类:

protected void onCreate(Bundle savedInstanceState) { 
 super.onCreate(savedInstanceState); 
  setContentView(R.layout.activity_main); 
  et_number = (EditText) MainActivity.this.findViewById(R.id.et_number); 
  Button bt_dial = (Button) findViewById(R.id.bt_dial); 
  bt_dial.setOnClickListener(new MyListener()); 
 } 
 private class MyListener implements View.OnClickListener { 
 @Override 
 public void onClick(View view) { 
  dialPhone(); 
 } 
}

第三种、Activity继承View.OnClickListener,由Activity实现OnClick(View view)方法,在OnClick(View view)方法中用switch-case对不同id代表的button进行相应的处理:

public class MainActivity extends Activity implements View.OnClickListener { 
 EditText et_number; 
 @Override 
 protected void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.activity_main); 
  et_number = (EditText) MainActivity.this.findViewById(R.id.et_number); 
 Button bt_dial = (Button) findViewById(R.id.bt_dial); 
  bt_dial.setOnClickListener(this); 
 } 
 public void onClick(View view) { 
  switch (view.getId()){ 
   case R.id.bt_dial: 
    dialPhone(); 
    break; 
   default: 
    break; 
  } 
 } 
}

第四种、在XML文件中显示指定按钮的onClick属性,这样点击按钮时会利用反射的方式调用对应Activity中的click()方法:

 
public void dialPhoneMethod(View view){ 
 dialPhone(); 
} 
private void dialPhone() { 
 String number = et_number.getText().toString().trim(); 
 if (TextUtils.isEmpty(number)){ 
  Toast.makeText(this, "电话号码不能为空", Toast.LENGTH_LONG).show(); 
  return; 
 } 
 Intent intent = new Intent(); 
 intent.setAction(Intent.ACTION_CALL); 
 intent.setData(Uri.parse("tel:" + number)); 
 startActivity(intent); 
}

以上就是在Android应用中利用 onClick实现单击事件的方法有哪些,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。


本文名称:在Android应用中利用onClick实现单击事件的方法有哪些-创新互联
文章源于:http://myzitong.com/article/ddojjj.html