我有一个UITextField,它包含一个UISackView,该视图被约束到父边界。在这个stackView中,我有3个子视图:标题标签、占位符(在文本矩形框架之后)和帮助器底部标签。
请注意:"文本链接"是有问题的权限视图
我还有一个rightView,它是一个按钮,我需要把它放在父边界的中间,因为它在正常情况下会这样做。
UITextField rightView对齐方式在没有标题标签的情况下也能正常工作,但是当我在堆栈中插入一个titleLabel时,rightView向上移动。
我可以使用insets来管理这种错位,但是我必须支持动态字体,所以我不能使用硬编码的insets。我如何将rightView放置在正确的帧中?我是否错过了layoutSubviews调用?
谢谢!
1条答案
按热度按时间wgx48brx1#
我已经解决了这个问题,通过覆盖
rightViewRect(forBounds bounds: CGRect) -> CGRect
,添加标题高度和间距到“Y”原点。如果你投反对票,请给我一些反馈以改善...