Cách tìm Chiều rộng của chế độ xem trước khi chế độ xem được hiển thị? Tôi không muốn thêm chế độ xem tùy chỉnh và nhấn vào các thứ nguyên trong OnChanged().Cách tìm Chiều rộng của chế độ xem trước khi chế độ xem được hiển thị?
Trả lời
Display display = getWindowManager().getDefaultDisplay();
View view = findViewById(R.id.YOUR_VIEW_ID);
view.measure(display.getWidth(), display.getHeight());
view.getMeasuredWidth(); // view width
view.getMeasuredHeight(); //view height
Vui lòng đánh dấu là đã giải quyết ^^ –
Bạn cũng có thể nhớ rằng nếu chế độ xem không bị thổi phồng, chiều rộng và chiều cao sẽ là 0. – Joru
Bạn đúng Joru. Tôi đã sử dụng ViewTreeObserver và giải quyết vấn đề của mình. Cảm ơn tất cả những ai đã cố gắng trả lời. –
@dmytrodanylyk - Tôi nghĩ rằng nó sẽ trở về chiều rộng & chiều cao là 0, do đó bạn cần phải sử dụng sau điều
LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View contentview = inflater.inflate(R.layout.YOURLAYOUTNAME, null, false);
contentview.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
int width = contentview.getMeasuredWidth();
int height = contentview.getMeasuredHeight();
Nó sẽ cho bạn chiều cao đúng & chiều rộng.
Đó là những gì tôi cần xác định xem tôi có nên bắt đầu một hàng mới của hộp kiểm hay không, trước tiên hãy tạo một hộp kiểm dòng và sau đó ngăn chặn tràn bằng cách tính toán chiều rộng ... hoàn hảo cảm ơn bạn. đến từ -> http://stackoverflow.com/a/24054428/1815624 – CrandellWS
Bạn nên sử dụng OnGlobalLayoutListener
được gọi cho các thay đổi trên chế độ xem, nhưng trước khi được vẽ.
costumView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
costumView.getWidth();
}
});
Tôi thích sử dụng kỹ thuật này theo my answer on a related question:
Đăng một Runnable từ onCreate()
đó sẽ được thực hiện khi xem đã được tạo:
contentView = findViewById(android.R.id.content);
contentView.post(new Runnable()
{
public void run()
{
contentHeight = contentView.getHeight();
}
});
Mã này sẽ chạy trên chủ đề giao diện người dùng chính, sau khi onCreate()
kết thúc.
Đây là cách tốt nhất ...... LÀM VIỆC !!!
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (fondo_iconos_height==0) { // to ensure that this does not happen more than once
fondo_iconos.getLocationOnScreen(loc);
fondo_iconos_height = fondo_iconos.getHeight();
redraw_function();
}
}
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
view.measure(size.x, size.y);
int width = view.getMeasuredWidth();
int height = view.getMeasuredHeight();
yourView.measure(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
int yourView= m_hidableRowContainer.getMeasuredHeight();
Vậy là xong.
'measure' lấy một cặp' hằng số View.MeasureSpec', không phải là hằng số param bố cục. – Tom
- 1. Three.js - Chiều rộng của chế độ xem
- 2. Hiển thị chế độ xem từ chế độ không xem/chế độ xem trong mvvmcross
- 3. UIView bringSubviewToFront: không * không * hiển thị chế độ xem trước
- 4. hiển thị định nghĩa chế độ xem
- 5. Chế độ xem và hiển thị
- 6. Làm cách nào để làm mờ chế độ xem mặt sau khi Chế độ xem tùy chỉnh được hiển thị
- 7. Chế độ xem hiển thị Android GONE
- 8. Chế độ xem trong Nhóm tùy chỉnh Chế độ xem không hiển thị
- 9. Chế độ xem hiển thị ở chế độ xem cuộn trên màn hình
- 10. Cách tạo nhiều Chế độ xem có cùng chiều rộng?
- 11. Cách nhận hoặc tính toán chiều rộng/chiều cao của chế độ xem được tăng cao
- 12. Sự kiện khi chế độ xem tìm kiếm mở rộng từ chế độ xem được biểu tượng
- 13. Hiển thị chế độ xem của bộ điều khiển khác
- 14. Ẩn chế độ xem trong Trình quản lý vùng, khi một chế độ xem khác được hiển thị
- 15. Android: nhận chiều cao của chế độ xem trước khi được vẽ
- 16. Django, hiển thị chế độ xem ở chế độ xem khác?
- 17. Chế độ xem danh sách mở rộng
- 18. Ember.js - Hiển thị chế độ xem phương thức với URL và chế độ xem gốc vẫn hiển thị
- 19. ViewModel của tôi có thể xem ObservableCollection của Chế độ xem hoặc Chế độ xem không?
- 20. Bật chế độ xem đăng nhập trước khi trình điều khiển thanh tab được hiển thị
- 21. Chế độ xem Tìm kiếm Xem ListView
- 22. AngularJs: Chạy Chỉ thị sau khi Chế độ xem được hiển thị hoàn toàn
- 23. Trong MVVM là DataTemplates được coi là Chế độ xem khi UserControls là Chế độ xem?
- 24. Thêm chế độ xem của trình điều khiển chế độ xem con vào chế độ xem phụ của bộ điều khiển chế độ xem cha mẹ
- 25. Android - Nhận diện tích hiển thị của chế độ xem?
- 26. Cách xem chế độ xem phụ huynh từ chế độ xem từng phần
- 27. Cách hiển thị/ẩn Chế độ xem trong EmberJS
- 28. Tải chế độ xem trong một chế độ xem khác
- 29. Định vị chế độ xem dưới hai chế độ xem (hoặc chế độ xem thấp nhất)
- 30. Cách hiển thị chế độ xem không có mẫu?
những gì bạn chính xác muốn ?? mô tả chi tiết –