zoukankan      html  css  js  c++  java
  • 利用手机中存储的*给联系人打电话与发短信

    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=" 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=" 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="" />
  • 相关阅读:
    针式PKM软件进入华军分类下载月排名前6名
    读取xml
    一个简单的记事本程序
    python输出重定向
    重看ATL布幔之下的秘密
    nginx学习(二)动态加载各模块
    ngx_queue的理解
    nginx学习(三)IOCP的使用
    nginx学习(一)内存
    使用python实现一个通用协议测试工具
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4072933.html
Copyright © 2011-2022 走看看