import java.util.regex.Matcher;
import java.util.regex.Pattern;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class myAndroid extends Activity {
 
 
 private Button myButton;
 private EditText myEditText;
 
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        myEditText=(EditText)findViewById(R.id.myEditText);
        myButton=(Button)findViewById(R.id.myButton);
       
        myButton.setOnClickListener(new Button.OnClickListener(){

   public void onClick(View v) {
    // TODO Auto-generated method stub
    try {
     String num=myEditText.getText().toString();
     if(isPhoneNumberValid(num)==true)
     {
      Intent myIntentDial=new Intent("android.intent.action.CALL",Uri.parse("tel:"+num));
      startActivity(myIntentDial);
      myEditText.setText("");
     }else
     {
      myEditText.setText("");
      Toast.makeText(myAndroid.this,"输入的电话格式不对",Toast.LENGTH_SHORT).show();
     }
    } catch (Exception e) {
     // TODO: handle exception
    }
   }

   private boolean isPhoneNumberValid(String phoneNumber) {
    // TODO Auto-generated method stub
    
    boolean idValid=false;
    /* 可接受的电话格式有: * ^\\(? :
    * 可以使用 "(" 作为开头 * ( \\d{3}): 紧接着三个数字 * \\)? :
    * 可以使用")"接续 * [- ]? : 在上述格式后可以使用具选择性的 "-". * ( \\d{3}) :
    *  再紧接着三个数字 * [- ]? : 可以使用具选择性的 "-" 接续. * ( \\d{4})$:
    *  以四个数字结束. * 可以比对下列数字格式:
    *   * (123)456-7890, 123-456-7890, 1234567890, (123)-456-7890 */
    String expression = "^\\(?( \\d{3})\\)?[- ]?( \\d{4})[- ]?( \\d{4})$";
    String expression2 ="^\\(?( \\d{2})\\)?[- ]?( \\d{3})[- ]?( \\d{8})$";
    CharSequence inputStr=phoneNumber;
    /*创建Pattern*/
    Pattern pattern=Pattern.compile(expression);
    
    /*将Pattern以参数传入Matcher作Reqular expression*/
    Matcher matcher=pattern.matcher(inputStr);
    
    Pattern pattern2=Pattern.compile(expression2);
    
    Matcher matcher2=pattern2.matcher(inputStr);
    
    if(matcher.matches() || matcher2.matches())
    {
     idValid=true;
    }
    return idValid;
   }});
       
    }
   
}
在AndroidMainifesx.xml 配置权限否则运行时出错!!!
<!---添加拨出电话权限->
<uses-permission android:name="android.permission.CALL_PHONE" />

------------------附加:
isPhoneNumberValid()检查用户数据的电话号码是否正确! 或者更简单的是 在main.xml的EditText中添加android:phoneNumber="true"
这个配置可限制用户输入的数据必须是数字!
您可能也喜欢:
Android---浮动搜索框(SearchManager)
Android 组件: SectionedAdapter
引用 ApiDemo的第一个应用:CustomDialog
Android开发网上的一些重要知识点 [4]
Android---AlarmManager(全局定时器/闹钟)指定时长或以周期形式执行某项操作
Line-breaking widget layout for Android
Android联系人读取操作笔记
android intent和intent action大全
android:webView
关于android应用程序使用ActivityManager退出的问题!
Android读写XML(上)——package说明
简单介绍Android中各种JAVA包的功能描述