2010-09-27 39 views
6

Hiện tại, tôi đang phát triển Ứng dụng Android sử dụng SDK 1.5 và ứng dụng thử nghiệm trên HTC Hero, phần mềm của nó là Android 1.5.Android - Imageview ở trung tâm ở mọi độ phân giải màn hình

Hãy để tôi đến điểm thực tế: trong ứng dụng, tôi có một lần xem hình ảnh để hiển thị hình ảnh (Độ phân giải hình ảnh là 320 * 480), giờ đây, hình ảnh hiển thị toàn màn hình một cách hoàn hảo, nhưng khi tôi cố gắng thử trên HTC EVO 4G (có độ phân giải 480 * 800), hình ảnh bị căng.

Vì vậy, những gì tôi muốn làm là muốn hiển thị hình ảnh có độ phân giải 320 * 480 ở mọi độ phân giải màn hình di động? tôi muốn nói rằng, nếu thiết bị di động có độ phân giải cao hơn (tức là 480 * 800, 480 * 854 hoặc loại khác), hình ảnh sẽ được hiển thị trong phần "Trung tâm" của màn hình.

Vì vậy, hiển thị hình ảnh ở Trung tâm trong tất cả các màn hình (không kéo dài hoặc cắt) độ phân giải khác hơn 320 * 480, tôi phải đặt thuộc tính nào?

Trả lời

5

Chỉ cần đặt thuộc tính scaleType của ImageView của bạn. Giá trị có thể ở đây: ImageView.ScaleType Bạn có thể muốn sử dụng CENTER.

Bên cạnh đó bạn phải đối mặt với một vấn đề khác: Bạn phải cung cấp một hình ảnh hdpi ngoài hình ảnh mdpi của bạn để hình ảnh mdpi của bạn không được tự động quy mô lên đến hdpi bởi hệ thống Android, đọc thêm ở đây: http://developer.android.com/guide/topics/resources/providing-resources.html

Chỉnh sửa: Oh, và tôi gần như quên: Các thư mục 'drawable-mdpi' và 'drawable-hdpi' chỉ có thể thực hiện được nếu bạn xây dựng dự án của mình với ít nhất là Android 1.6. Vì vậy, bạn phải đặt minSdkVersion thành 3 và targetSdkVersion thành 4 và đặt hình ảnh của bạn vào thư mục 'drawable' bình thường để Android 1.5 bắt kịp. Xem video này từ Google I/O 2010 để tìm hiểu thêm: Casting a wide net for all Android devices.

+0

@mreichelt ya i đã phát triển ứng dụng trong 1,5 và cùng một ứng dụng cũng chạy tốt trong 2.1 với cùng một màn hình, nhưng trong 2.1 cho phép HTC 4G evo, hình ảnh được kéo dài, đó là lý do tại sao tôi yêu cầu –

+0

Bạn thậm chí đã thử câu trả lời? – mreichelt

+0

@mreichelt thanx cho câu trả lời .. tôi đã thấy sự kiện này IO/2010 video, hãy để tôi thử cách trả lời của bạn .... thực sự tôi đang gặp phải vấn đề "Giải quyết khác biệt" –

Các vấn đề liên quan