Tôi có một số UILabel
Đôi khi tôi muốn căn giữa theo chiều dọc trong ô. Điều này phải được thực hiện theo chương trình. Tôi đã thử thêm các hạn chế sau đây vào trung tâm nó (LOCNAME là UILabel):ios 6: Trung tâm UILabel theo chiều dọc sử dụng các ràng buộc Bố cục tự động
[cell addConstraint:[NSLayoutConstraint constraintWithItem:cell
attribute:NSLayoutAttributeCenterY relatedBy:0 toItem:cell.locName
attribute:NSLayoutAttributeCenterY multiplier:1 constant:0]];
Đây là kết quả tôi nhận được:
Dường như định tâm của nó, nhưng có lẽ thay đổi chiều cao của UILabel
hoặc gì đó?
Dưới đây là bộ điều khiển xem trong IB:
Làm thế nào tôi có thể đạt được dọc trung programatically?
Tại sao điều này phải được thực hiện theo chương trình? Tại sao bạn không chỉ đơn giản là thiết kế một tế bào khác nhau bằng cách sử dụng IB và sequester mà thay vì này? – slf
Cảm ơn! Điều đó sẽ làm các trick cho trường hợp cụ thể của tôi. Bạn sẽ làm gì nếu chúng ta không giao dịch với các tế bào? Giả sử chúng tôi chỉ cố gắng căn giữa nhãn trong một UIView chung có lập trình? –
Điều này có thể không phải là cách tốt nhất, nhưng tôi có lẽ sẽ tính toán chiều cao và làm một toán học nhỏ để tìm ra những gì CGRect nên được của khung. – slf