【发布时间】:2016-11-02 17:03:03
【问题描述】:
如何创建列表(FirstName、LastName、PhoneNumber)?
我的代码只创建了 FirstName 和 LastName。
public List<PersonContact> GetPhoneContacts()
{
_phoneContacts = new List<PersonContact>();
PhoneContacts = new List<PersonContact>();
var ctx = Forms.Context;
var contactList = new List<string>();
var uri = ContactsContract.Contacts.ContentUri;
string[] projection = { ContactsContract.Contacts.InterfaceConsts.Id, ContactsContract.Contacts.InterfaceConsts.DisplayName };
var cursor = ctx.ApplicationContext.ContentResolver.Query(uri, projection, null, null, null);
if (cursor.MoveToFirst())
{
do
{
contactList.Add(cursor.GetString(cursor.GetColumnIndex(projection[1])));
}
while (cursor.MoveToNext());
}
var sortedList = contactList.Where(s => s.Contains(" "));
foreach (var cont in sortedList)
{
string[] words = cont.Split(' ');
PersonContact contact = new PersonContact();
contact.FirstName = words[0];
contact.LastName = words[1];
_phoneContacts.Add(contact);
}
PhoneContacts = _phoneContacts;
return PhoneContacts;
}
我以列表“Kate Parry”的一个元素为例,并拆分此字符串。
我的主要问题是 2000 个电子邮件地址。找到 ' ' 并过滤。
【问题讨论】:
-
所以,让我澄清一下我是否做对了。您需要名字、姓氏和电话号码吗?从我所见,您决定使用拆分空间的人是否有名字或姓氏?如果一个人只有名字怎么办,你想过滤掉他吗?你根本就没有电话号码。对吗?
标签: xamarin xamarin.android android-contacts