Tôi gọi getHeight và getWidth ở chế độ xem tùy chỉnh theo phương thức onDraw()
. getHeight()
trả lại 1,073,742,549
và getWidth()
trả lại 1,073,742,304
. Tuy nhiên, khi tôi nhìn vào số liệu hiển thị cho chiều cao và chiều rộng của màn hình, tôi nhận được 800 và 480 tương ứng. GetHeight là gì và getWidth trở về?Xem giá trị trả về getHeight() và getWidth() quá lớn
Tôi đang nhận được thứ nguyên của chế độ xem để tôi có thể chọn kích thước của một ảnh bitmap sẽ xuất hiện trong chế độ xem.
Cảm ơn.
Tôi mới trên Android, nhưng tôi có kinh nghiệm tương tự. Nó phải làm một cái gì đó với phiên bản Android, vì cùng một dự án hoạt động tốt trên 4.1, nhưng có hành vi kỳ lạ này trên 2.3.6 Có lẽ một số cài đặt tương thích bị thiếu. –
Bạn có lẽ cũng có thể ghi đè trênMeasure trong chế độ xem tùy chỉnh của mình và gọi setMeasuredDimensions với giá trị của MeasureSpec.makeMeasureSpec (width, MeasureSpec.EXACTLY). Tôi tin rằng các giá trị bạn đang nhận được sẽ được trả về từ makeMeasureSpec với MeasureSpec.EXACTLY và các thứ nguyên bạn đã chỉ định. –