UITextField占位符文本:调整以适合 [英] UITextField placeholder text: adjust to fit

查看:88
本文介绍了UITextField占位符文本:调整以适合的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有UITextField,其中较长的文本设置为占位符.我想要的是在字段宽度过小时调整此占位符文本的字体大小.

I have UITextField with longer text in it set as placeholder. What I want is for this placeholder text to adjust its font size when the width of field is too small.

我已经尝试了其他帖子(以编程方式和IB方式)中介绍的这种解决方案

I already tried this solution described in other posts (programmatically and in IB)

self.fieldTest.adjustsFontSizeToFitWidth = true
self.fieldTest.minimumFontSize = 10.0

我在这里想念什么?

推荐答案

您可以创建UITextField的子类:

class AutoSizeTextField: UITextField {
    override func layoutSubviews() {
        super.layoutSubviews()

        for subview in subviews {
            if let label = subview as? UILabel {
                label.minimumScaleFactor = 0.3
                label.adjustsFontSizeToFitWidth = true
            }
        }
    }
}    

或者您也可以在视图控制器的viewDidAppear中添加一些代码:

Or you can just add some code in your view controller's viewDidAppear:

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)

    for subview in fieldTest.subviews {
        if let label = subview as? UILabel {
            label.minimumScaleFactor = 0.3
            label.adjustsFontSizeToFitWidth = true
        }
    }
}

这篇关于UITextField占位符文本:调整以适合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆