- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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,就像我们在其
您可能关注的文档
最近下载
- 2024年新修订《公司法》解读课件.pptx
- 电网企业数字化转型的路径与策略.docx VIP
- 危险化学安全卡—航空煤油.doc VIP
- 碱金属K和Na对配合煤炼焦特性及捣固焦炭质量影响的研究-化学工程与技术专业论文.docx VIP
- 小学美术教育在跨学科教学中的融合与应用教学研究课题报告.docx
- 2025至2030中国建筑工程承包行业市场占有率及有效策略与实施路径评估报告.docx VIP
- 2024红太阳光伏组件用户使用手册.docx VIP
- 2025年梦想启航未来可期班会.pptx VIP
- 职业技术学校《机床电气控制技术》课程标准.doc VIP
- 人教版六年级上册美术教案(全册).pdf VIP
原创力文档


文档评论(0)