我正在构建联系人申请表。 在主要活动中,我有一个列表视图,我在其中显示联系人。
我正在使用CursorAdapter来处理带有列表
的游标没有照片,这一切都很好。
然而,当我尝试使用照片时,滚动变得迟钝。
调用打开输入流非常慢,即使inputStream为null且没有要加载的图像:
public static Bitmap loadContactPhoto(ContentResolver cr, long id)
{
Uri uri = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, id);
InputStream input = ContactsContract.Contacts.openContactPhotoInputStream(cr, uri);
if (input == null)
{
return null;
}
return BitmapFactory.decodeStream(input);
}
我该怎么办?
答案 0 :(得分:0)
您是否在UI线程中加载图像.... 如果是的话,你不应该这样做,因为这会阻塞线程并使用户体验缓慢。
你应该学习延迟加载图像......试着用谷歌搜索出来....
我也不会在UI线程上进行数据库操作...尽管有人说在UI线程中做小型DB操作是可以的......我会尽可能地避免它......
检查以下链接: