2016-04-03 18 views
5

Tôi muốn xác định kích thước instrinstic của chế độ xem ngăn xếp trước khi hiển thị nó trên màn hình. Ý tưởng là sử dụng nó như là một phần của một trình đơn kéo lên từ dưới cùng của màn hình nhưng khi tôi truy vấn đối tượng trước khi nó xuất hiện nó có kích thước (-1, -1). Có điều gì tôi nên làm trước khi tôi gọi đến kích thước nội dung công cụ không?xác định kích thước nội tại của UIStackView trước khi hiển thị trên màn hình

Trả lời

11

UIStackView không có kích thước nội dung nội tại. Bạn nhận được -1 vì đó là giá trị của UIViewNoIntrinsicMetric.

Thay vào đó, hãy yêu cầu kích thước phù hợp của nó:

let size = stackView.systemLayoutSizeFittingSize(UILayoutFittingCompressedSize) 
+0

Tôi nghĩ rằng công trình này. Vẫn cần phải phân loại logic cho phần còn lại của mã nhưng nó cung cấp cho các kích thước chính xác trở lại. – drw

+0

@rob luôn đến! :) hoạt động tuyệt vời – Alan

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