2013-10-10 68 views
1

在我的应用程序中,我有两个EditText和一个Button。如果我按下按钮,我想在这两个编辑框中选择联系人姓名和号码。从联系人列表中提取号码和姓名

<EditText android:textSize="16.0dip" 
     android:gravity="left" 
     android:id="@+id/contact_numbersub" 
     android:layout_width="160.0dip" 
     android:layout_height="36.0dip" 
     android:text="Mobile" 
     android:maxLines="1" 
     android:layout_below="@+id/contact_number" 
     android:layout_alignParentRight="true"> 
     <requestFocus /> 
    </EditText> 


    <EditText 
     android:id="@+id/contact_number" 
     android:textSize="16.0dip" 
     android:gravity="left" 
     android:layout_width="160.0dip" 
     android:layout_height="36.0dip" 
     android:text="Unknown Caller" 
     android:maxLines="1" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentRight="true" /> 

       <Button 
     android:gravity="center" 
     android:id="@+id/contactbutton" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/contactlist" 
     android:layout_toRightOf="@id/contact_label" 
     android:layout_alignTop="@id/contactimage" 
     android:onClick="onClickSelectContact"/> 

而且我已定义onActivityResult方法从图库中拾取图像。所以我在这里很难找回联系人姓名和电话号码。图像检索成功,但我没有解决联系人检索

感谢任何人都可以提供帮助。

+0

你的问题是一些如何混乱。你的意思是来自edittext视图的文本或来自联系人应用的联系人姓名和号码? – user755

+0

你的意思是,你有两个'startActivityFor Result()',所以需要在'onActivityResult()'里面两个单独的动作? – Nizam

+0

我的意思是我想从联系人列表中检索姓名和号码,并将其设置为edittext字段 –

回答

1

这不是完整的解决方案,但我希望它会是一些有用的东西。

假设我的按钮点击情况如下现在

btncontact.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     Intent i=new Intent(Intent.ACTION_PICK,ContactsContract.Contacts.CONTENT_URI); 
     startActivityForResult(i,1);//Request_code is 1 
    } 
}); 

findViewById(R.id.button5).setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     Intent i=new Intent(Intent.ACTION_PICK); 
      i.setType("image/*"); 
     startActivityForResult(i,2);//Request_code is 2 
    } 
}); 

,为onActivityResult,

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     if(data!=null && data.getData()!=null){ 
     Uri _uri=data.getData(); 
      Log.d("Nzm", ""+_uri); 


     switch(requestCode){ 
        case 1: 
          // you have _uri in your hand which have contact id. Do necessary steps for contact as you want here. 
          break; 
        case 2:// Action for your image 
          Intent i=new Intent(Intent.ACTION_VIEW); 
          i.setData(_uri); 
          startActivity(i); 
          break; 
        } 
       } 
     } 
+0

它的工作正常...谢谢 –

+0

很高兴帮助:) – Nizam

0

你见过Accessing Contacts Data?请特别注意检索联系人的详细信息

+0

是的,我看到了,我也跟着它。我填写所需的权限和所有东西,但由于图像拾取onActivityResult正在重写,所以得到错误.... –

相关问题