单击事件的三种写法.

package cn.itcast.phone;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity implements OnClickListener {
	public static final String tag ="MainActivity";
	private  EditText mEditText;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        // 得到了 activity界面上button的引用 
        Button button = (Button) this.findViewById(R.id.bt_dail);
    	mEditText = (EditText) MainActivity.this.findViewById(R.id.et_number);
    /*   button.setOnClickListener(new OnClickListener() {
			
        	// 方法二 :通过匿名内部类的方式实现点击事件 
			@Override
			public void onClick(View v) {
				
				String number = mEditText.getText().toString();
				Log.i(tag,number);
				Log.i(tag,"匿名内部类");
				//播打电话号码 
				Intent intent = new Intent(); // 意图 代表一个要执行动作的意图 
				//拨打动作   110 代表的是一个数据 
				intent.setAction(Intent.ACTION_CALL);
				intent.setData(Uri.parse("tel:"+number));
				
				//android里面 
				startActivity(intent);
			}
		});*/
    	
    	// button.setOnClickListener(this);
    	
    }
    
    
    /**
     * 第一种写法 
     * @author zehua
     *
     */
    private  class MyButtonClickListener implements OnClickListener{
    	// 在某一个view对象  被点击的时候 调用的回调方法 
		@Override
		public void onClick(View v) {
			
		
			String number = mEditText.getText().toString();
			Log.i(tag,number);
			//播打电话号码 
			Intent intent = new Intent(); // 意图 代表一个要执行动作的意图 
			//拨打动作   110 代表的是一个数据 
			intent.setAction(Intent.ACTION_CALL);
			intent.setData(Uri.parse("tel:"+number));
			
			//android里面 
			startActivity(intent);
		}
    	
    }


    // 按钮对应的点击事件 
    // 参数 v 代表的就是当前被点击的条目对应的view对象 
	@Override
	public void onClick(View v) {
		switch (v.getId()) {
		case R.id.bt_dail:
			//相应按钮的点击事件 

			String number = mEditText.getText().toString();
			Log.i(tag,number);
			//播打电话号码 
			Intent intent = new Intent(); // 意图 代表一个要执行动作的意图 
			//拨打动作   110 代表的是一个数据 
			intent.setAction(Intent.ACTION_CALL);
			intent.setData(Uri.parse("tel:"+number));
			
			//android里面 
			startActivity(intent);
	 		break;

 
		}
		
	}
    
	/**
	 * 定义 xml布局文件里面 button 绑定的点击事件的方法 
	 * @param view
	 */
    public void dail(View view){
    	String number = mEditText.getText().toString();
		Log.i(tag,number);
		//播打电话号码 
		Intent intent = new Intent(); // 意图 代表一个要执行动作的意图 
		//拨打动作   110 代表的是一个数据 
		intent.setAction(Intent.ACTION_CALL);
		intent.setData(Uri.parse("tel:"+number));
		
		//android里面 
		startActivity(intent);
    }
	
    public void textview_click(View view){
    	Log.i(tag,"文本被点击了");
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值