Android_03android拨号软件

今日开发了一个简单的安卓拨号软件。

  步骤如下: 1.先构建用户界面

       2.写java代码获取控件

       3.进行逻辑的控制

       4.添加权限

  1.构建用户界面

技术图片

 

  2.点进R.java文件会发现系统已经自动生成索引,通过调用完成

技术图片

 

   3.写java代码

技术图片
技术图片

 1 package com.example.dailer; 2  3 import android.app.Activity; 4 import android.content.Intent; 5 import android.net.Uri; 6 import android.os.Bundle; 7 import android.text.TextUtils; 8 import android.view.Menu; 9 import android.view.MenuItem;10 import android.view.View;11 import android.widget.Button;12 import android.widget.EditText;13 import android.widget.Toast;14 15 public class MainActivity extends Activity {16 private EditText ed1;17 18 // Activity代表了一个用户的界面,一个activity对应一个android界面19 // activity可以创建一个窗口在这个窗口上加载用户的界面 用来跟用户进行交互20 // 当activity创建的时候就会调用onCreate()方法,在其中做初始化的操作21  @Override22 protected void onCreate(Bundle savedInstanceState) {23 super.onCreate(savedInstanceState);24 // 首先调用setContentView方法加载页面25  setContentView(R.layout.activity_main);26 // 找到要操作的控件对应的java对象 findViewById()的返回值是view对象 为android所有控件的父类27 Button btn1 = findViewById(R.id.button1);28 ed1 = findViewById(R.id.editText1);29 // 给按钮添加点击事件30 btn1.setOnClickListener(new MyOnClickListener());31 32  }33 34 public class MyOnClickListener implements android.view.View.OnClickListener {35 // 当点击这个控件的时候调用这个onclick方法36  @Override37 public void onClick(View v) {38 // TODO Auto-generated method stub39 // 1.获取用户输入的电话号码40 String text = ed1.getText().toString();41 // 2.判断用户输入是否为空 为空:提示输入电话号码 ;非空:打电话42 if (TextUtils.isEmpty(text)) {43 // Toast.makeText(?,?,?):向页面输出一个短暂的提示44 // 第一个参数 上下文context,MainActivity就是一个上下文,可以传入当前activity对象45 // 第二个参数 要显示的提示信息46 // 第三个参数 显示提示的时间长短有两个选择 Toast.LENGTH_SHORT(时间短) Toast.LENGTH_LONG(时间长)47 Toast.makeText(MainActivity.this, "请输入电话号码", Toast.LENGTH_SHORT).show();48 } else {49 // intent意图就是对要进行的操作的抽象描述50 Intent intent = new Intent();51 // 给意图设置操作52  intent.setAction(Intent.ACTION_CALL);53 Uri data = Uri.parse("tel:"+text);54 // 给意图设置携带的数据55  intent.setData(data);56 // 开启打电话的activity(界面)57  startActivity(intent);58  }59  }60 61  }62 63 public boolean onCreateOptionsMenu(Menu menu) {64 // Inflate the menu; this adds items to the action bar if it is present.65  getMenuInflater().inflate(R.menu.main, menu);66 return true;67  }68 69 public boolean onOptionsItemSelected(MenuItem item) {70 // Handle action bar item clicks here. The action bar will71 // automatically handle clicks on the Home/Up button, so long72 // as you specify a parent activity in AndroidManifest.xml.73 int id = item.getItemId();74 if (id == R.id.action_settings) {75 return true;76  }77 return super.onOptionsItemSelected(item);78  }79 80 }

MainActivity.java

 

 界面展示:

技术图片

 

 

输入为空时:

技术图片

 

 输入之后点击拨打号码:

技术图片

 

 完成,但是优缺点这个手机不能打美国的紧急电话例如911等电话号码

 

相关文章