首页 > 解决方案 > 如何在 View Swift 顶部添加标签

问题描述

这是我正在尝试做的事情:

截图

截图取自 iPhone:

截屏

下面的代码:

//Show HighLightView
    let highLightView = UIView(frame: CGRect(x: self.minXHighLightView!, y: 0, width: self.maxXHighLightView!-self.minXHighLightView!, height: self.soundWaveView.frame.height))
    highLightView.backgroundColor = UIColor(displayP3Red: 89/256, green: 206/256, blue: 249/256, alpha: 0.4)
    self.soundWaveView.addSubview(highLightView)

 //Show HighLight Lable
    let highLightLabelCount = UILabel(frame: CGRect(x: 0, y: 0, width: 50, height: 50))
    highLightLabelCount.textColor = .black
    highLightLabelCount.font = UIFont(name: "Lato-Bold", size: 20)
    highLightView.addSubview(highLightLabelCount)

问题:如何在左上角设置框架或约束标签设置?

任何帮助将不胜感激。

提前致谢。

标签: iosswiftuser-interface

解决方案


您的约束应以 x,y 为中心而不是左上角

//Show HighLightView
    let highLightView = UIView(frame: CGRect(x: self.minXHighLightView!, y: 0, width: self.maxXHighLightView!-self.minXHighLightView!, height: self.soundWaveView.frame.height))
    highLightView.backgroundColor = UIColor(displayP3Red: 89/256, green: 206/256, blue: 249/256, alpha: 0.4)
    self.soundWaveView.addSubview(highLightView)

 //Show HighLight Lable
    let highLightLabelCount = UILabel()
    highLightLabelCount.textColor = .black
    highLightLabelCount.font = UIFont(name: "Lato-Bold", size: 20)
    highLightView.addSubview(highLightLabelCount)
    highLightLabelCount.translatesAutoresizingMaskIntoConstraints = false

self.highLightView.textAlignment = .center
NSLayoutConstraint.activate([
   self.highLightLabelCount.centerXAnchor.constraint(equalTo: self.highLightView.centerXAnchor),
   self.highLightLabelCount.centerYAnchor.constraint(equalTo: self.highLightView.centerYAnchor)
])

推荐阅读