Tôi có một bộ chuyển đổi listview
và tôi đang cố gắng sau trong newView
phương pháp:Làm thế nào để có được Android Liên thumbnail
@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
final LayoutInflater inflater = LayoutInflater.from(context);
View v = inflater.inflate(layout, parent, false);
long contactId = Long.valueOf(cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID)));
String contactName = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
boolean hasPhone = Boolean.parseBoolean(cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER)));
String thumbnailUri = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.PHOTO_THUMBNAIL_URI));
TextView name_text = (TextView) v.findViewById(R.id.name_entry);
if (name_text != null) {
name_text.setText(contactName);
}
name_text.setTag(new Contact(contactId, hasPhone));
ImageView thumbnail = (ImageView) v.findViewById(R.id.thumbnail);
if (thumbnailUri != null) {
thumbnail.setImageURI(Uri.parse(thumbnailUri));
} else {
thumbnail.setImageResource(R.drawable.ic_launcher);
}
return v;
}
Nhưng khi tôi cố gắng phân tích Uri được lưu trữ trong thumbnailUri, tôi nhận được lỗi sau:
08-09 01:58:38.619: I/System.out(1471): resolveUri failed on bad bitmap uri: content://com.android.contacts/contacts/1/photo
Tôi có làm theo cách này sai không? Mọi sự trợ giúp sẽ rất được trân trọng!
Bạn có thể đặt thông tin nhật ký trong đó để xem URI mà bạn đang cố giải quyết là gì và đăng nó ở đây không? Log.i ("URI", thumbnailUri); – RyanInBinary
nội dung: //com.android.contacts/contacts/1/photo, mà tôi tin là chính xác. Có lẽ chỉ vì tôi đang sử dụng trình mô phỏng. Tôi cần có một thiết bị thực sự:/ –
Chỉ cần có một thiết bị thực. Điều này làm việc, mã của tôi là tốt. –