assignContactFromPhone("110", false)
这个函数里面的布尔值 是什么作用啊?
我 试了 true 和 false  运行以后没有看出来  什么区别

解决方案 »

  1.   

    /**
         * Assign a contact based on a phone number. This should only be used when
         * the contact's URI is not available, as an extra query will have to be
         * performed to lookup the URI based on the phone number.
         *
         * @param phoneNumber The phone number of the contact.
         * @param lazyLookup If this is true, the lookup query will not be performed
         * until this view is clicked.
         */
        public void assignContactFromPhone(String phoneNumber, boolean lazyLookup) {
            mContactPhone = phoneNumber;
            if (!lazyLookup) {
                mQueryHandler.startQuery(TOKEN_PHONE_LOOKUP, null,
                        Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, mContactPhone),
                        PHONE_LOOKUP_PROJECTION, null, null, null);
            } else {
                mContactUri = null;
                onContactUriChanged();
            }
        }其实第二个参数 true和false的区别在于查询的时间点,当为true的时候,调用这个assignContactFromPhone函数不查询,直接返回一个null的mContactUri,等到用户点击QuickContactBadge控件的时候再查询;当为false的时候,调用这个函数即查询PhoneLookup.CONTENT_FILTER_URI,当点击的时候就不再查询了。
    所以,楼主疑惑调用true或者false没有任何反应是正常的。
      

  2.   

    那是不是我在这个地方设置这个参数true或者false   基本对程序功能没有什么影响  只不过是程序内部执行的查询的时间点会产生不一样的影响?
      

  3.   

    不过感觉还像是  false的时候是不是效率会更加好一点啊?
      

  4.   

    各有利弊吧!看在什么场合。
    false的话,点击直接显示界面,速度会更快些。