sjwwjs8 2022-06-24 15:07 采纳率: 0%
浏览 191
已结题

swift UItextfield输入内容超出设定宽度不自动换行

问题遇到的现象和发生背景

在自定义的Alert上面添加了如下输入框,设置了高度为60

问题相关代码,请勿粘贴截图
    // descriptionField
    var descriptionField: UITextField = {
        let textField = UITextField(frame: .zero)
        let typeAttributes: [NSAttributedString.Key : Any] = [
            .foregroundColor : UIColor.white,
            .font : Theme.Font.PingFangMedium(15.0)
        ]
        textField.defaultTextAttributes = typeAttributes
        textField.typingAttributes = typeAttributes
        textField.keyboardType = .default
        textField.keyboardAppearance = .dark
        textField.returnKeyType = .done
        textField.textAlignment = .left
        textField.contentVerticalAlignment = .top
        let str = NSAttributedString(string: "描述",
                                     attributes: [
                                        NSAttributedString.Key.font: Theme.Font.PingFangMedium(15.0),
                                        NSAttributedString.Key.foregroundColor:"#707070".hexColor])
        textField.attributedPlaceholder = str
        return textField
    }()


descriptionField.snp.makeConstraints { make in
            make.left.equalTo(descriptionBgView.snp.left).offset(19.75)
            make.top.equalTo(descriptionBgView.snp.top).offset(9.42)
            make.width.equalTo(Theme.Size.width - 60.0)
            make.height.equalTo(60.0)
        }
descriptionBgView.addSubview(descriptionField)

运行结果及报错内容

img

当输入内容超出预定宽度时,输入内容仍然继续向后。检查发现_UITextLayoutFragmentView的高度只有一行文字高度。UITextField,UIFieldEditor,_UITextLayoutCanvasView的高度均为60

我想要达到的结果

UITextField的高度为60,宽度为屏幕宽度-60.输入内容超出设定宽度后,自动换行输入

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 7月2日
    • 创建了问题 6月24日

    悬赏问题

    • ¥15 用visual studi code完成html页面
    • ¥15 聚类分析或者python进行数据分析
    • ¥15 逻辑谓词和消解原理的运用
    • ¥15 三菱伺服电机按启动按钮有使能但不动作
    • ¥15 js,页面2返回页面1时定位进入的设备
    • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
    • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
    • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
    • ¥20 腾讯企业邮箱邮件可以恢复么
    • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?