【问题标题】:Adjust label based on Text given in Text view in swift 3?根据swift 3中文本视图中给出的文本调整标签?
【发布时间】:2017-10-13 13:50:51
【问题描述】:

我正在开发 照片编辑应用程序,我正在尝试根据 Text View 中给出的文本调整标签。我尝试了很多代码,但它对我不起作用。我想在图像上添加标签,该标签基于我的 textview 中给出的文本,如下图所示。 我无法根据 textview 的文本设置标签的宽度和高度。我试过以下代码。请有人帮忙。

let newWidth: CGFloat = CGFloat(txtView.text.boundingRect(with: txtView.frame.size, options: .usesLineFragmentOrigin,  context: nil).size.width)
let Label = UILabel(frame: CGRect(x: 100, y: 100, width: newWidth, height: 100))
imgView?.addSubview(Label)

我也试过了

var maximumLabelSize = CGSize(width: 296, height: FLT_MAX)
var expectedLabelSize: CGSize = yourString.size(withFont: yourLabel.font, constrainedTo: maximumLabelSize, lineBreakMode: yourLabel.lineBreakMode)
//adjust the label the the new height.
var newFrame: CGRect = yourLabel.frame
newFrame.size.height = expectedLabelSize.height
yourLabel.frame = newFrame

【问题讨论】:

  • 不完全清楚你在做什么。您有UIImageView,并且想在上面显示UILabel?文本应该居中吗?它应该覆盖整个图像,还是只覆盖一部分?我建议你展示一张你想要的结果图片。
  • @DonMag 请检查我更新的问题。
  • 你提供的截图我猜它来自 JLStickerTextView。你想在图片上添加标签,这个 JLStickerTextView 库就是这样做的。我正在将此库用于视频编辑应用程序。检查作者提供的示例与库
  • 嘿@ImrulKayes,我也试过这个库,但是有构建时间错误我已经在其中添加了问题github.com/luiyezheng/JLStickerTextView/issues/16
  • @KhushbuDesai,您必须编辑该库,因为它是用早期版本的 Swift(可能是 1.2)编写的。按照 Xcode 的说明手动消除错误(我已经这样做了)。

标签: ios swift3 uilabel


【解决方案1】:

我已经使用 JLStickerTextView 解决了我的问题,但是在这个存储库中它与 Swift 3.0 不兼容,所以我对项目进行了更改,您可以在没有任何内容的情况下找到工作项目她的错误https://github.com/khush004/StickerView/tree/master

【讨论】:

    【解决方案2】:
    func calcheight(strin:String) -> CGFloat
        {
            let label =  UILabel(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.size.width, height: CGFloat.greatestFiniteMagnitude))
            label.numberOfLines = 0
            label.text = strin
            label.sizeToFit()
            return label.frame.height + 2
    
        }
    

    【讨论】:

      猜你喜欢
      • 2017-01-05
      • 2020-11-29
      • 2013-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多