0

我在android系统ContactPicker中的EditText

实施contactPicker没有设定我创建了一个的ImageButton和按钮的onClick我开始activityforresult得到在编辑文本

单触点的PHONENUMBER但问题是数据始终为空。

这里是我的代码

public static final int PICK_CONTACT = 1; 

ImageButton contactsButton = (ImageButton) findViewById(R.id.contacts_button); 
     contactsButton.setOnClickListener(new Button.OnClickListener() { 
      public void onClick(View v) { 

      Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI); 
      startActivityForResult(intent,PICK_CONTACT); 

     } 
    }); 

这里是activityforresult

@Override 
    public void onActivityResult(int reqCode, int resultCode, Intent data) { 
     super.onActivityResult(reqCode, resultCode, data); 
     switch (reqCode) { 

     case (PICK_CONTACT): 


      Log.d(" data", data+""); //returning null 


     Log.d("resultCode", resultCode+""); //returning 0 

     Log.d("reqCode", reqCode+""); //returning 1 

     Log.d("Activity2.RESULT_OK", Activity2.RESULT_OK+"");//returning -1 

      if (resultCode == Activity2.RESULT_OK) { 



      Uri contactData = data.getData(); 
       Cursor c = getContentResolver().query(contactData, null, null, null, null); 
       if (c.moveToFirst()) { 
       String contactId = c.getString(c.getColumnIndex(ContactsContract.Contacts._ID)); 
       String hasNumber = c.getString(c.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER)); 
       String num = ""; 
       if (Integer.valueOf(hasNumber) == 1) { 
        Cursor numbers = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId, null, null); 
        while (numbers.moveToNext()) { 

         num = numbers.getString(numbers.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); 
         Toast.makeText(xxx.this, "Number="+num, Toast.LENGTH_LONG).show(); 

        ed= (EditText)findViewById(R.id.txtoooo); 
        ed.setText(num); 



        } 
       } 
      } 

       break; 

      } 
     } 
    } 

所有我想要做的是选择一个联系人并加载其电话号码的EditText。 请帮我,我尝试了所有可用的互联网解决方案..我犯了一个错误?

回答

0

我在活动中宣布,我只是删除不求回报的东西我AndroidManifest.xml文件解决了这个问题

。现在工作正常。

<activity 
     android:name="xxx.aaa.bbb" 
     android:label="@string/app_name" 
     android:launchMode="singleInstance" 
     android:configChanges="orientation|keyboardHidden" 
     > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
    </activity> 

TO:

从改变

<activity 
     android:name="xxx.aaa.bbb" 
     android:label="@string/app_name"> 

</activity> 

现在我可以从意图的结果。任何人都可以从中获得帮助。 谢谢你..