BlackBerry 应用程序开发者指南 第二卷:高级--第3章 集成PIM功能 |
|||
| 作者:佚名 来源:本站整理 发布时间:2008-3-15 0:34:26 | |||
导入一个联系人
为了返回一组PIM项,调用fromSerialFormat().使用PIM项为了创建一个新的联系人,调用ContactList.importContact()
"UTF8," "ISO-8859-1," 和 "UTF-16BE."此参数不能为空.
删除一个联系人
在联系人列表上调用removeContact()方法.
关闭一个联系人列表
调用close().
代码实例
下面的实例描述了如何显示一个屏幕来允许用户增加一个新的联系人到地址本中.在你保存一个联系人之后,打开地址本确认该联系人是否已经保存.
例: ContactsDemo.java /** * ContactsDemo.java * Copyright (C) 2002-2005 Research In Motion Limited. */ package com.rim.samples.docs.contactsdemo; import java.io.*; import java.util.*; import javax.microedition.pim.*; import net.rim.device.api.ui.*; import net.rim.device.api.ui.component.*; import net.rim.device.api.ui.container.*; import net.rim.device.api.i18n.*; import net.rim.device.api.system.*; import net.rim.device.api.util.*; import com.rim.samples.docs.baseapp.*; import net.rim.blackberry.api.pdap.*; public final class ContactsDemo extends BaseApp { private ContactScreen _contactScreen; public static void main(String[] args) { new ContactsDemo().enterEventDispatcher(); } public ContactsDemo() { _contactScreen = new ContactScreen(); pushScreen(_contactScreen); } protected void onExit() { } // Inner class. Creates a Screen to add a contact. public static final class ContactScreen extends MainScreen { private EditField _first, _last, _email, _phone, _pin; private SaveMenuItem _saveMenuItem; private class SaveMenuItem extends MenuItem { private SaveMenuItem() { super(null, 0, 100000, 5); } public String toString() { return "Save"; } public void run() { onSave(); } } public ContactScreen() { _saveMenuItem = new SaveMenuItem(); setTitle(new LabelField("Contacts Demo", LabelField.ELLIPSIS | LabelField.USE_ALL_WIDTH)); _first = new EditField("First Name: ", ""); add(_first); _last = new EditField("Last Name: ", ""); add(_last); _email = new EditField("Email Address: ", "", BasicEditField.DEFAULT_MAXCHARS, BasicEditField.FILTER_EMAIL); add(_email); _phone = new EditField("Work Phone: ", "", BasicEditField.DEFAULT_MAXCHARS, BasicEditField.FILTER_PHONE); add(_phone); _pin = new EditField("PIN:", "", 8, BasicEditField.FILTER_HEXADECIMAL); add(_pin); } protected boolean onSave() { String firstName = _first.getText(); String lastName = _last.getText(); String email = _email.getText(); String phone = _phone.getText(); String pin = _pin.getText(); // Verify that a first or last name and email has been entered. if ((firstName.equals("") && lastName.equals("")) || email.equals("")) { Dialog.inform("You must enter a name and an email address!"); return false; } else { try { ContactList contactList = (ContactList)PIM.getInstance(). openPIMList(PIM.CONTACT_LIST, PIM.WRITE_ONLY); Contact contact = contactList.createContact(); String[] name = new String[contactList.stringArraySize(Contact.NAME)]; // Add values to PIM item. if (!firstName.equals("")) { name[Contact.NAME_GIVEN] = firstName; } if (!lastName.equals("")) { name[Contact.NAME_FAMILY] = lastName; } contact.addStringArray(Contact.NAME, Contact.ATTR_NONE, name); contact.addString(Contact.EMAIL, Contact.ATTR_HOME, email); contact.addString(Contact.TEL, Contact.ATTR_WORK, phone); if (contactList.isSupportedField(BlackBerryContact.PIN)) { contact.addString(BlackBerryContact.PIN, Contact.ATTR_NONE, pin); } // Save data to address book. contact.commit(); // Reset UI fields. _first.setText(""); _last.setText(""); _email.setText(""); _phone.setText(""); _pin.setText(""); return true; } catch (PIMException e) { return false; } } } protected void makeMenu(Menu menu, int instance) { menu.add(_saveMenuItem); super.makeMenu(menu, instance); } } } |
|||
| [] [返回上一页] [打 印] | |||
文章评论 |
|||
