【问题标题】:View Inside a Stack view doesn't shown properly in iOS (Swift)在 iOS (Swift) 中,堆栈视图中的视图未正确显示
【发布时间】:2019-11-27 06:50:07
【问题描述】:

我尝试制作一个包含视图的水平堆栈视图。下面是我的代码,它不能正常工作。也没有应用于视图的圆角半径

        tag_stack.spacing = 30
        tag_stack.translatesAutoresizingMaskIntoConstraints = false
        tag_stack.axis = .horizontal
        stack_scroll.addSubview(tag_stack)
        
        for views in selected{
           
            let holder_view = UILabel()
            let container = UIView()
            
            container.translatesAutoresizingMaskIntoConstraints = false
            holder_view.translatesAutoresizingMaskIntoConstraints = false
            
            container.heightAnchor.constraint(equalToConstant: 25).isActive = true
            container.backgroundColor = UIColor(red: 47/255, green: 175/255, blue: 249/255, alpha: 1.0)
            container.layer.cornerRadius = 12.5
            
            container.addSubview(holder_view)
           
            holder_view.font = UIFont.systemFont(ofSize: 12)
            holder_view.textColor = .white
            holder_view.centerYAnchor.constraint(equalTo: container.centerYAnchor, constant: 0).isActive = true
            holder_view.leadingAnchor.constraint(equalTo: container.leadingAnchor, constant: 5).isActive = true
            holder_view.trailingAnchor.constraint(equalTo: container.trailingAnchor, constant: -5).isActive = true
            holder_view.text = views

            tag_stack.addArrangedSubview(container)
        }
        tag_stack.leadingAnchor.constraint(equalTo: stack_scroll.leadingAnchor).isActive = true
        tag_stack.trailingAnchor.constraint(equalTo: stack_scroll.trailingAnchor).isActive = true````

【问题讨论】:

  • 我知道圆角半径不适用。覆盖此函数“viewDidLayoutSubviews()”并尝试在那里设置 container.layer.cornerRadius。

标签: ios swift xcode uiscrollview uistackview


【解决方案1】:

您忘记添加所需的属性只需转到属性并转到查看属性并检查 clipsToBound 如果您绑定了控件,或者您可以通过添加一行代码来解决此问题,只需添加

if (view.clipsToBound == true){
 view.clipsToBound = false 
}

【讨论】:

    【解决方案2】:

    您似乎忘记设置所需的属性。不要忘记添加view.clipsToBounds = falseview.layer.cornerRadius = x 以获得所需的视图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-21
      • 2020-03-22
      • 1970-01-01
      • 2018-11-09
      • 2022-12-09
      • 1970-01-01
      • 2018-05-09
      • 2018-01-05
      相关资源
      最近更新 更多