首页 > 解决方案 > 在 UiScrollView 中的 UIView 中的 UITextField 中无法识别触摸事件

问题描述

我有一个自定义文本字段,它位于滚动视图内部的视图中,当我将它的父视图放在 UIscroll 视图中时,触摸事件似乎不起作用

遵循代码:

func loadScrollView()
{
    if metadataBuilder.cells.count > 0
    {
            for i in 0...metadataBuilder.cells.count - 1
            {
                if i < metadataBuilder.cells.count
                {
                    //stopLoading(result: [], title: "")
                    fieldValues = metadataBuilder.fieldValues
                    auxView.addSubview(metadataBuilder.cells[i])
                    metadataBuilder.cells[i].topAnchor.constraint(equalTo: auxcontraintTop, constant: 8).isActive = true
                    metadataBuilder.cells[i].leftAnchor.constraint(equalTo: auxView.leftAnchor, constant: 16).isActive = true
                    metadataBuilder.cells[i].rightAnchor.constraint(equalTo: auxView.rightAnchor, constant: -16).isActive = true
                    metadataBuilder.cells[i].heightAnchor.constraint(equalToConstant: 100).isActive = true
                    scrollView.setContentOffset(CGPoint(x: 0, y: 0), animated: false)
                    auxcontraintTop = metadataBuilder.cells[i].bottomAnchor
                }
            }
    }

    self.view.addSubview(scrollView)

    scrollView.alwaysBounceVertical = true
    scrollView.showsVerticalScrollIndicator = true
    scrollView.alwaysBounceHorizontal = false
    scrollView.showsHorizontalScrollIndicator = false
    // constrain the scroll view to 8-pts on each side
    scrollView.leftAnchor.constraint(equalTo: view.leftAnchor, constant: 0).isActive = true
    scrollView.topAnchor.constraint(equalTo: view.topAnchor, constant: 0).isActive = true
    scrollView.rightAnchor.constraint(equalTo: view.rightAnchor, constant: 0).isActive = true
    scrollView.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: 0).isActive = true

    scrollView.addSubview(auxView)
    auxView.topAnchor.constraint(equalTo: scrollView.topAnchor, constant: 0).isActive = true
    auxView.leftAnchor.constraint(equalTo: scrollView.leftAnchor, constant: 0).isActive = true
    auxView.rightAnchor.constraint(equalTo: scrollView.rightAnchor, constant: 0).isActive = true
    auxView.bottomAnchor.constraint(equalTo: scrollView.bottomAnchor, constant: 0).isActive = true



    scrollView.autoresizingMask = UIViewAutoresizing.flexibleHeight
}

override func viewDidLayoutSubviews() {
    scrollView.isScrollEnabled = true
    scrollView.contentSize = CGSize(width: view.bounds.width, height: heightView)
}

标签: iosswiftuiviewuiviewcontrolleruiscrollview

解决方案


推荐阅读