convertView.setBackgroundColor(0); }
return convertView; }
@Override
public long getItemId(int position) { return position; }
@Override
public Object getItem(int position) { return users[position]; }
@Override
public int getCount() { return users.length; } };
//设置listView控件的适配器
listView.setAdapter(listViewAdapter);
listView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub
//记录点击列 selecteItem=arg2;
//刷新列表 listViewAdapter.notifyDataSetChanged(); } }); }
/*创建菜单*/ public boolean onCreateOptionsMenu(Menu menu) { menu.add(Menu.NONE, 1, Menu.NONE, \添加\ menu.add(Menu.NONE, 2, Menu.NONE, \编辑\ menu.add(Menu.NONE, 3, Menu.NONE, \查看信息\ menu.add(Menu.NONE, 4, Menu.NONE, \删除\ menu.add(Menu.NONE, 5, Menu.NONE, \查询\ menu.add(Menu.NONE, 6, Menu.NONE, \导入到手机电话薄\ menu.add(Menu.NONE, 7, Menu.NONE, \退出\ return super.onCreateOptionsMenu(menu);
}
/*菜单事件*/ public boolean onOptionsItemSelected(MenuItem item){ // TODO Auto-generated method stub switch (item.getItemId()) {
case 1://添加
Intent intent = new Intent(MyContactsActivity.this,AddContactsActivity.class); startActivity(intent); break;
case 2://编辑 if(users[selecteItem].getId_DB()>0)//根据数据库ID判断当前记录是否可以操作 { intent = new Intent(MyContactsActivity.this,UpdateContactsActivity.class); intent.putExtra(\ startActivity(intent); }else { Toast.makeText(this, \无结果记录,无法作!\ } break;
case 3://查看信息 if(users[selecteItem].getId_DB()>0) { intent = new Intent(MyContactsActivity.this,ContactsMessageActivity.class); intent.putExtra(\ startActivity(intent); }else { Toast.makeText(this, \无结果记录,无法作!\ }
break; case 4://删除 if(users[selecteItem].getId_DB()>0) { delete(); }else { Toast.makeText(this, \无结果记录,无法作!\ } break; case 5://查询
操
操
操
new FindDialog(this).show(); break;
case 6://导入到手机电话薄 if(users[selecteItem].getId_DB()>0) { importPhone(users[selecteItem].getName(),users[selecteItem].getMoblie()); Toast.makeText(this, \已经成功导入‘\’到手机电话薄!\ }else { Toast.makeText(this, \
无
结
果
作!\ } break;
case 7://退出 finish(); break; default: break; } return super.onOptionsItemSelected(item); } @Override protected void onResume() { // TODO Auto-generated method stub super.onResume(); //重新加载数据 ContactsTable ct=new ContactsTable(this); users=ct.getAllUser(); //刷新列表 listViewAdapter.notifyDataSetChanged(); }
/*查询*/
public class FindDialog extends Dialog{ public FindDialog(Context context) { super(context); } protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.find); setTitle(\联系人查询\ Button find=(Button)findViewById(R.id.find);
记
录
无
法
操
,
Button cancel=(Button)findViewById(R.id.cancel); find.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub EditText value=(EditText)findViewById(R.id.value); ContactsTable ct=new ContactsTable(MyContactsActivity.this); users=ct.findUserByKey(value.getText().toString()); for(int i=0;i System.out.println(\姓名是\ \,电话是\ } listViewAdapter.notifyDataSetChanged(); selecteItem=0; dismiss(); } }); cancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub dismiss(); } }); } } /*删除联系人*/ public void delete() { Builder alert = new AlertDialog.Builder(this); alert.setTitle(\系统信息\ alert.setMessage(\是否要删除联系人?\alert.setPositiveButton(\是\ new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { ContactsTable ct=new ContactsTable(MyContactsActivity.this); //删除联系人信息 if(ct.deleteByUser(users[selecteItem])) { //重新获取数据 users=ct.getAllUser(); //刷新列表 listViewAdapter.notifyDataSetChanged(); selecteItem=0; Toast.makeText(MyContactsActivity.this, \删除成功!\ Toast.LENGTH_SHORT).show(); }else { Toast.makeText(MyContactsActivity.this, \删除失败!\ Toast.LENGTH_SHORT).show(); } } }); alert.setNegativeButton(\否\ new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { } }); alert.show(); } ///导入到手机电话薄 public void importPhone(String name,String phone) { //系统通信录ContentProvider的URI Uri phoneURL=android.provider.ContactsContract.Data.CONTENT_URI; ContentValues values = new ContentValues(); //首先向RawContacts.CONTENT_URI执行一个空值插入,目的是获取系统返回的rawContactId Uri rawContactUri = this.getContentResolver(). insert(RawContacts.CONTENT_URI, values); long rawContactId = ContentUris.parseId(rawContactUri); } //往data表插入姓名数据 values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE); values.put(StructuredName.GIVEN_NAME, name); this.getContentResolver().insert(phoneURL, values); //往data表插入电话数据 values.clear(); values.put(Data.RAW_CONTACT_ID, rawContactId); values.put(Data.MIMETYPE, Phone.CONTENT_ITEM_TYPE); values.put(Phone.NUMBER, phone); values.put(Phone.TYPE, Phone.TYPE_MOBILE); this.getContentResolver().insert(phoneURL, values);
相关推荐: