android应用选择电话本已有的电话.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
android应用选择电话本已有的电话

实现自己的应用选择电话本已有的电话 这个功能呢就类似于发短信的过程中的一个操作,当你写好短信需要发送的时候你是必须要填写对方的手机号码的,当然大多数手机 上都有查找或者浏览之类的功能就是会跳转到你目前的电话本中让你选择一个号码,然后返回短信界面并自动填写到发送号码的文本框。 我就这个简单的过程和我实现中遇到的问题与大家分享下,希望大家能触类旁通。 程序是这样的界面上有一个文本框用来输入或者说存放电话号码的,另外的一个浏览按钮则让你去选择你要找的电话号码。 首先我们先来看一段API文档 ACTION_GET_CONTENT with MIME type vnd.Android.cursor.item/phone -- Display the list of peoples phone numbers, allowing the user to browse through them and pick one and return it to the parent activity. 这个呢给出了我们需要的Intent 的相关 action 和 uri .那么下来就好办了,开始实现activity Java代码 packagecom.automan; importandroid.app.Activity; importandroid.content.Intent; importandroid.database.Cursor; importandroid.os.Bundle; importandroid.util.Log; importandroid.view.View; importandroid.view.View.OnClickListener; importandroid.widget.Button; importandroid.widget.EditText; publicclassPickPhoneextendsActivity{ /**Calledwhentheactivityisfirstcreated.*/ privateEditTextet=null; @Override publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); Buttonbtn=(Button)findViewById(R.id.Button01); et=(EditText)findViewById(R.id.tel); btn.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){ Intenti=newIntent(); i.setAction(Intent.ACTION_GET_CONTENT); i.setType(vnd.android.cursor.item/phone); startActivityForResult(i,0); } }); } @Override protectedvoidonActivityResult(intrequestCode,intresultCode,Intentdata){ //TODOAuto-generatedmethodstub Log.e(abcd,ok); super.onActivityResult(requestCode,resultCode,data); try { Cursorc=this.getContentResolver().query(data.getData(),null,null,null,null); if(c!=null) { if(c.moveToFirst()) { et.setText(c.getString(1)); } } } catch(Exceptione) { Log.e(abcd,e.getMessage()); } } } 如上是实现代码,不过关于onActivityResult 方法里的详细说明下 首先根据API提示可以知道必然会返回给这个activity一些数据,那么数据如何携带呢?相信大家都很清楚了,就是这个Intent参数 我们在学习cp这个基础知识的时候已经了解了它的用处,这里就在此验证了它的好处。我们不需要去了解具体的实现我们只关注暴漏给我 们的API,Intent 有2个关键的参数 这里我们当然是要观察它的URI了,我首先对这个URI进行了观察(Log.e)因为我并不完全了解这里 的过程,只能在一定的理论基础上大胆尝试,当然结果是令人兴奋的,系统给我们返回了一个uri,就像我们在其

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档