好的,我正在尝试复制创建联系人快捷方式时放置在主屏幕上的快捷方式,示例如下:
我有一个可用的 QuickContactBadge,单击它会显示 QuickContact 工具栏。但是,我有两件事遇到麻烦。
一是图片。我尝试使用这个问题的代码(我通过添加一个参数来传递联系人 ID 来更改它)。然后我将图像分配给我的 QuickContactBadge,如下所示:
bdg.setImageURI(getPhotoUri(cid));
它肯定会得到图片,但它得到的图片完全是错误的。如此处所示:
如您所见,它为 Domino's 返回的图像显然不是 Domino's 徽标。
我正在让我的联系人 ID 从此代码传递给函数:
public static String[] ContactsProjection = new String[] {
Contacts._ID,
Contacts.LOOKUP_KEY,
Contacts.DISPLAY_NAME
};
public static Cursor getContacts() {
ContentResolver cr = CoreLib.ContentResolver();
Cursor contacts = cr.query(
ContactsContract.Data.CONTENT_URI,
ContactsProjection,
null, null,
Contacts.TIMES_CONTACTED + " DESC"
);
return contacts;
}
我认为这应该为我返回每条记录的正确 ID。是的?
接下来如何让缩略图像快捷方式显示的那样缩小或裁剪?
看到 QuickContactBadge 实际上并没有复制 QuickContact 快捷方式的整个外观和感觉,我有点失望,......而只是充当 QuickContact 卡的调用目标。是否有任何内置方法可以轻松复制联系人快捷方式的整体、调用、图像、文本和所有内容,而无需从头开始复制整个内容?