联系人列表检索结果

时间:2018-01-02 10:59:00

标签: android android-contacts

当我使用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);
    }
}

1 个答案:

答案 0 :(得分:1)

而不是在触摸侦听器上使用点击侦听器。 你的触摸是事件被称为三次。 (用于触地,触摸和取消)。 如果您只想使用onTouch,请使用event==MotionEvent.ACTION_DOWNevent==MotionEvent.ACTION_UP添加if条件。