簡體   English   中英

如何獲取 UITextField 的行高

[英]How do I get the line height of UITextField

我有幾個問題在網上找不到答案:

1.如何獲取UITextField的行高?

2.如何讓 UITextField 最多只能輸入 3 行文本?

3.如何讓 UITextField 每行最多只能輸入 25 個字符?

並感謝您的回答!

正如評論所說,您應該使用 UITextView,而不是 UITextField。 UITextField 只處理一行。 使用 UITextView 處理多行文本。

我要給你一個關於第 3 條的意見。

首先,有一些東西limits the length了 textview limits the length
自動布局到 25 個字符的長度以適合您想要的字體大小。

第二個是當文本達到25個字符時, it adds a line-breaking symbol


extension mainVC: UITextViewDelegate {

   func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
        
        if let char = text.cString(using: String.Encoding.utf8) {
            let isBackSpace = strcmp(char, "\\b")
            
            if isBackSpace != -92 {
                if textView.text.count == 25 {
                    textView.text += "\n"
                }
            }
        }
        
     
        return true
    }
}

如果您輸入的not backspace ,它將被執行。 如果是25個字符,你可以在textView中的文本中添加行符號'\\n'並更改它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM