页面一:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (resultCode) { //判断回传数据时所点击的按钮并接收数据
case RESULT_OK:
Bundle bundle = data.getExtras();
String name = bundle.getString("name");
String phone= bundle.getString("phone");
if((name.equals("")||name==null)||(phone.equals("")||phone==null)){
Toast.makeText(this,"请输入联系人姓名和号码",Toast.LENGTH_SHORT).show();
}else{
Map<String,Object> map=new HashMap<String,Object>();
map.put("name",name);
map.put("phone",phone);
mArrayList.add(map);
SimpleAdapter adapter= new SimpleAdapter(
this,
mArrayList,
R.layout.phonelist,
new String[]{"name","phone"},
new int[]{R.id.tvName,R.id.tvPhone}
);
mListView= (ListView) findViewById(R.id.listViewRecive);
mListView.setAdapter(adapter);
}
//
// Intent it = new Intent(Intent.ACTION_INSERT, Uri.withAppendedPath(
// Uri.parse("content://com.android.contacts"), "contacts"));
// it.setType("vnd.android.cursor.dir/person");
// it.putExtra(android.provider.ContactsContract.Intents.Insert.NAME,name); // 联系人姓名
// it.putExtra(android.provider.ContactsContract.Intents.Insert.PHONE,
// phone); // 手机号码
// startActivity(it);
//将姓名号码写入系统通讯录
ContentValues values = new ContentValues();
Uri rawContactUri = this.getBaseContext().getContentResolver().insert(ContactsContract.RawContacts.CONTENT_URI, values);
long rawContactId = ContentUris.parseId(rawContactUri);
values.clear();
values.put(ContactsContract.Contacts.Data.RAW_CONTACT_ID, rawContactId);
values.put(ContactsContract.Contacts.Data.MIMETYPE, ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE);
values.put(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME, name);
this.getBaseContext().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values);
values.clear();
values.put(ContactsContract.Contacts.Data.RAW_CONTACT_ID, rawContactId);
values.put(ContactsContract.Contacts.Data.MIMETYPE, ContactsContract.CommonDataKinds.Phone.CONTENT_ITEM_TYPE);
values.put(ContactsContract.CommonDataKinds.Phone.NUMBER, phone);
values.put(ContactsContract.CommonDataKinds.Phone.TYPE, ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE);
this.getBaseContext().getContentResolver().insert(android.provider.ContactsContract.Data.CONTENT_URI, values);
break;
case RESULT_CANCELED: //点击取消按钮
Toast.makeText(this,"取消添加联系人",Toast.LENGTH_SHORT).show();
break;
}
}
页面二:
public class AddCall extends Activity implements View.OnClickListener {
private EditText etName,etPhone;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.adddialog);
etName= (EditText) findViewById(R.id.etName);
etPhone= (EditText) findViewById(R.id.etPhone);
findViewById(R.id.btnCancle).setOnClickListener(this);
findViewById(R.id.btnSure).setOnClickListener(this);
}
@Override
public void onClick(View view) { //设置对话框按钮监听事件
String str1=etName.getText().toString();
String str2=etPhone.getText().toString();
switch (view.getId()){
case R.id.btnSure:
Intent intent=new Intent();
intent.putExtra("name",str1);
intent.putExtra("phone",str2);
this.setResult(RESULT_OK,intent);
this.finish();
break;
case R.id.btnCancle:
Intent intent2=new Intent();
setResult(RESULT_CANCELED,intent2);
this.finish();
break;
}
}
}