我可以检索联系人姓名和电话,但如何在一个查询中检索联系人照片?
String[] PROJECTION = new String[] { Contacts.People._ID, Contacts.PeopleColumns.NAME, Contacts.Phones.NUMBER };
Cursor c = a.managedQuery(Contacts.People.CONTENT_URI, PROJECTION, null, null, Contacts.People.DEFAULT_SORT_ORDER);
return (new SimpleCursorAdapter(a,
R.layout.list_row,
c,
new String[] { Contacts.PeopleColumns.NAME, Contacts.Phones.NUMBER },
new int[] { R.id.toptext, R.id.bottomtext }));
答案 0 :(得分:1)
我在同一条船上(对于android-3到android-5来启动)!
我没有看到1.x或2.x中的照片列,所以我只是使用带有临时视图持有者的 CursorAdapter (私有类,分配到anon视图标记)以获得良好的衡量标准,然后根据需要在 bindView 中使用 loadContactPhoto 。
那里的诀窍似乎是避免过度/过度缩放(例如,为每张照片缓存 Bitmap.createScaledBitmap 的结果,至少?),以免视图再次减速你失去了首先拥有光标驱动列表的好处。
我知道,变得混乱。我确定必须有一个更好的方式!好吧,我希望有。 :)