利用手机中存储的电话号码给联系人打电话与发短信

1.将存储在数据库中的数据布局到手机界面上,其操作请见http://blog.csdn.net/xia09222826/article/details/28660653

2.三种效果显示出的效果各自是:

1)自己定义的效果


2)单选的效果

3)多选的效果

3.点击某一个联系人进行拨打电话或者发送短信(以自己定义的效果为例)

1)效果视图(比方点击了序号1的联系人):从手机电话备份界面跳转到PhoneandemailActitvity界面

2)程序实现

①注冊点击事件         lv_users.setOnItemClickListener(this);

②在onItemClick()方法中使用getItemAtPosition()依据位置获取数据,在使用Intent intent=new Intent(MainActivity.this, PhoneandemailActivity.class);从手机电话备份界面跳转到PhoneandemailActitvity界面,使用putExtra()方法获取您要传递到PhoneandemailActitvity界面的信息。

注意:须要使用startActivity(intent);開始活动

③在PhoneandemailActitvity中,利用Intent intent=getIntent();String name = intent.getStringExtra("username");final String phone = intent.getStringExtra("userphone");获取到从手机电话备份界面传递来的信息

3)拨打电话的功能的实现

①创建电话拨打button的点击事件:

tv_call.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View v) {
				Intent intent=new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+phone));
				PhoneandemailActivity.this.startActivity(intent);
			}
		});

②点击后显示的界面为:

4)发送短信的功能的实现

①创建发送短信的点击事件,并利用Intent对象将联系人的号码传递给MessageActivity界面

tv_massage.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View v) {
				Intent intent=new Intent(PhoneandemailActivity.this, MassageActivity.class);
				intent.putExtra("userphone", phone);
				startActivity(intent);
			}
		});

②MessageActivity界面的搭建


③发送短信的功能的程序实现

a.利用Intent对象获取PhoneandemailActitvity界面传递的信息。

b.创建发送的点击事件     send_btn.setOnClickListener(this);

	@Override
	public void onClick(View v) {
		int id=v.getId();
		switch(id){
		case R.id.send_btn:
			String phoneNum=et_phone.getText().toString();
			String content=et_content.getText().toString();
			if(TextUtils.isEmpty(content)){
				Toast.makeText(this, R.string.error_sms_content, Toast.LENGTH_SHORT).show();
			}else{
				SmsManager smsManager=SmsManager.getDefault();
				ArrayList<String> message = smsManager.divideMessage(content);
				for(int i=0;i<message.size();i++){
					smsManager.sendTextMessage(phoneNum, null,message.get(i), null, null);
				} 
				Toast.makeText(this, R.string.success_sms_content, Toast.LENGTH_LONG).show();
			}
			break;
		default:
			break;
		}
		
c.实现结果
<img width="377" height="533" style="width: 372px; height: 452px;" src="http://img.blog.csdn.net/20140606102020015?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhMDkyMjI4MjY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /><img width="379" height="536" style="width: 335px; height: 449px;" src="http://img.blog.csdn.net/20140606102024750?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhMDkyMjI4MjY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。