联系人列表检索结果

Contact List retrieve result

当我使用 startActivityForResult 在 DialogFragment 上显示 android 联系人列表时:

 contact.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                startActivityForResult(new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI), REQUEST_CODE_PICK_CONTACTS);
                return true;
            }
        });

);

当联系人列表出现时,我应该点击联系人两次或三次直到列表消失,而不是点击一次

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

    if (requestCode == REQUEST_CODE_PICK_CONTACTS && resultCode == getActivity().RESULT_OK) {
        uriContact = data.getData();
        contact.setText(name);
    }
}

不要使用触摸监听器,而是使用点击监听器。 你的联系是事件被称为三次。 (对于触地,触地和取消)。 如果您只想使用 onTouch,则将 if 条件与 event==MotionEvent.ACTION_DOWNevent==MotionEvent.ACTION_UP.