Swift UITextView 和 UIImageView UIBezierPath

Swift UITextView and UIImageView UIBezierPath

我正在使用 Swift,设置在 IB 中创建的 UITextView,试图在页面上获取多个图像以编程方式换行文本。似乎可以很好地处理一个图像路径,但是当我添加第二个图像时会中断(停止包装第一个图像)。任何援助将不胜感激。

代码示例:

    override func viewDidLoad() {
    super.viewDidLoad()


    let image = UIImageView(image: UIImage(named: "testimage"))
    image.frame = CGRect(x: 0, y: 0, width: 100, height: 100)
    let path = UIBezierPath(rect: CGRectMake(0, 0, image.frame.width, image.frame.height))
    textContainer.textContainer.exclusionPaths = [path]
    textContainer.addSubview(image)

    let image2 = UIImageView(image: UIImage(named: "testimage2"))
    image2.frame = CGRect(x: 100, y: 200, width: 100, height: 100)
    let path2 = UIBezierPath(rect: CGRectMake(100, 200, image.frame.width, image.frame.height))
    textContainer.textContainer.exclusionPaths = [path2]
    textContainer.addSubview(image2)

谢谢!

多里安

您需要将第二个路径附加到 exclusionPaths 数组。

目前您正在用第二条路径替换第一条路径,而不是同时使用两者。

例如:

textContainer.textContainer.exclusionPaths.append(path2)