Tôi đang nhận đường dẫn tệp hình ảnh bằng cách sử dụng nút duyệt .... sau đó tôi muốn đặt hình ảnh này thành chế độ xem hình ảnh bằng đường dẫn tệpCách đặt hình ảnh thành imageView bằng cách sử dụng filepath trong android
Trả lời
Nếu với File
bạn có nghĩa là một đối tượng File
, tôi sẽ cố gắng:
File file = ....
Uri uri = Uri.fromFile(file);
imageView.setImageURI(uri);
bạn có thể đưa ra một thử mã này:
imageView.setImageBitmap(BitmapFactory.decodeFile(yourFilePath));
BitmapFactory sẽ giải mã các tập tin hình ảnh cho thành một đối tượng Bitmap, mà sau đó bạn sẽ đặt vào đối tượng imageView.
Đây là phương pháp dễ nhất. Rõ ràng, nếu bạn chỉ trả lại tệp và không phải đường dẫn. sử dụng 'file.getPath()' thay vì 'yourFilePath' – mr0mr
Để thiết lập một hình ảnh từ một tập tin mà bạn cần phải làm điều này:
File file = new File(Environment.getExternalStorageDirectory()+File.separator + "image.jpg"); //your image file path
mImage = (ImageView) findViewById(R.id.imageView1);
mImage.setImageBitmap(decodeSampledBitmapFromFile(file.getAbsolutePath(), 500, 250));
Khi decodeSampledBitmapFromFile
:
public static Bitmap decodeSampledBitmapFromFile(String path,
int reqWidth, int reqHeight) { // BEST QUALITY MATCH
// First decode with inJustDecodeBounds=true to check dimensions
final BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(path, options);
// Calculate inSampleSize
// Raw height and width of image
final int height = options.outHeight;
final int width = options.outWidth;
options.inPreferredConfig = Bitmap.Config.RGB_565;
int inSampleSize = 1;
if (height > reqHeight) {
inSampleSize = Math.round((float)height/(float)reqHeight);
}
int expectedWidth = width/inSampleSize;
if (expectedWidth > reqWidth) {
//if(Math.round((float)width/(float)reqWidth) > inSampleSize) // If bigger SampSize..
inSampleSize = Math.round((float)width/(float)reqWidth);
}
options.inSampleSize = inSampleSize;
// Decode bitmap with inSampleSize set
options.inJustDecodeBounds = false;
return BitmapFactory.decodeFile(path, options);
}
Bạn có thể chơi với những con số (500 và 250 trong trường hợp này) để thay đổi chất lượng của bitmap cho ImageView
.
Để tải một hình ảnh từ một tập tin:
Bitmap bitmap = BitmapFactory.decodeFile(pathToPicture);
Giả sử rằng bạn pathToPicture
là đúng, sau đó bạn có thể thêm hình ảnh bitmap này để một ImageView
như
ImageView imageView = (ImageView) getActivity().findViewById(R.id.imageView);
imageView.setImageBitmap(BitmapFactory.decodeFile(pathToPicture));
- 1. Đặt bitmap Android thành Imageview
- 2. Cách đặt thuộc tính android: layout_alignParentLeft thành imageview trong mã?
- 3. Tải hình ảnh trong ImageView trong Android
- 4. Hình ảnh lát gạch trong android bằng ImageView trong XML
- 5. Cách tải hình ảnh cho Android ImageView từ classpath?
- 6. Cách đặt chiều cao, chiều rộng thành hình ảnh bằng cách sử dụng jquery
- 7. Android ẩn và xóa hình ảnh trong imageview
- 8. Android: ImageView mở rộng hình ảnh nguồn
- 9. Tải hình ảnh cho ImageView trên Android
- 10. Cắt ảnh trong android bằng cách sử dụng opencv
- 11. Android: Xoay hình ảnh trong hình ảnh bằng một góc
- 12. Android: cách chuyển đổi toàn bộ ImageView thành bitmap?
- 13. Cách đặt tệp PNG thành ImageView?
- 14. Làm thế nào để xóa hình ảnh động áp dụng cho ImageView android sử dụng startAnimation
- 15. Android: Cách ngăn hình ảnh bị thu nhỏ trong ImageView hoặc ImageButton?
- 16. đặt kích thước hình ảnh thành toàn màn hình trong android
- 17. Đặt một hình ảnh lớn trong ImageView không hoạt động
- 18. Nhận hình ảnh đi kèm (drawable) trong ImageView android
- 19. Phát hiện hình chữ nhật trong hình ảnh và vẽ phác thảo bằng cách sử dụng cv mở trong android
- 20. Cách đặt hình ảnh thành UIImage
- 21. Chụp ảnh bằng Android bằng cách sử dụng FFmpeg
- 22. Cách tìm hình ảnh trong hình ảnh khác bằng cách sử dụng python
- 23. Có vấn đề về thiết bị thực bằng cách sử dụng hình ảnh vector trong Android. SVG-android
- 24. Android - Crossfade mutiple hình ảnh trong một ImageView
- 25. Cách đặt hình ảnh màn hình khóa android
- 26. Lấy hình ảnh từ ImageView
- 27. Cách sử dụng Canvas để hợp nhất hai hình ảnh trong Android?
- 28. Android, ImageView trên ImageView
- 29. hiểu cách sử dụng Ma trận ImageView
- 30. Kết hợp video với hình ảnh tĩnh trong CALayer bằng cách sử dụng AVVideoCompositionCoreAnimationTool
Uri imageUri = Uri.parse (ImagePath); imageView.setImageURI (imageUri); ... Điều này làm việc cho tất cả các thiết bị cho tôi ngoại trừ Xiaomi Mi4, bất kỳ ý tưởng tại sao là điều đó. – Avijeet
Điều đó không hoạt động với hình ảnh lớn trong thiết bị của tôi (ví dụ: 1.5MB hoặc 2MB). Bất kỳ cách nào để nén nó (tôi chỉ muốn hiển thị hình thu nhỏ). –
Nó không đặt kích thước hình ảnh chính xác, câu trả lời của Lakshay Sharma là hoàn hảo với kích thước hình ảnh –