求助:怎样获取同一个联系人的多个电话?

tober 2008-07-24 05:13:33
比如写短信息的时候,到电话本里选择了一个联系人,如果这个联系人有多于一个的电话(Mobile, Telephone, Video call, Internet telephone等),就会弹出一个选择列表把该联系人所有的电话都列出来以供选择。请问是怎么获得所有的电话号码的呢?


因为才学习这个不久,下面的代码是从SDK例子里拿来的。

// get the General PhoneNumber//选择这个只能得到普通号码
TPbkContactItemField* phoneFieldGeneral = pbkItem->FindField(EPbkFieldIdPhoneNumberGeneral);

phoneFieldGeneral->GetTextL(iNumberGeneral);

// get the Mobile PhoneNumber//这个只能得到手机号码
TPbkContactItemField* phoneFieldMobile = pbkItem->FindField(EPbkFieldIdPhoneNumberMobile);

phoneFieldMobile->GetTextL(iNumberMoblie);


怎样才显示个人所有号码供选择?
...全文
236 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
btsy2000 2008-07-24
  • 打赏
  • 举报
回复
up
tober 2008-07-24
  • 打赏
  • 举报
回复
谢谢楼上二位,我看看,明天结贴。
dyw 2008-07-24
  • 打赏
  • 举报
回复
try: CPbkPhoneNumberSelect
anel 2008-07-24
  • 打赏
  • 举报
回复
		item=iContactDb->ReadMinimalContactLC(id);
CContactItemFieldSet &fieldSet=item->CardFields();
iContactDb->ReadContactTextDefL(id,entry.iName);

for(j=0;j<fieldSet.Count();j++){
CContactItemField &field=fieldSet[j];
const CContentType &type=field.ContentType();
if(type.Mapping()==KUidContactFieldVCardMapTEL){
TPtrC tp(field.TextStorage()->Text());
if(tp.Length()){
array->AppendL(tp);
}
}
}
CleanupStack::PopAndDestroy(item);

3,119

社区成员

发帖
与我相关
我的任务
社区描述
塞班系统(Symbian系统)是塞班公司为手机而设计的操作系统,它的前身是英国宝意昂公司的 EP ( Electronic Piece of cheese)操作系统。
社区管理员
  • Symbian社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧