[英]Add UILabels in swift on viewDidLoad
我試圖在viewDidLoad方法中以編程方式添加UILabels,當按下按鈕但不調用onViewDidLoad時,以下代碼有效。 我希望標簽在視圖首次加載到屏幕后立即顯示。
override func viewDidLoad()
{
super.viewDidLoad()
BarGraphView.isRandomColor = true
let labelsArray:[String] = ["A","B","C","D","E","F","G"]
var graphPoints: [CGFloat] = [4,8,6,8,5,6,8]
bar.plotGraph(labelsArray, data: graphPoints)
lineGraph.plotGraph(labelsArray, data: graphPoints,view: view)
for i in 0..<lineGraph.graphXAxisPoints.count {
print("graph x point ==>"+String(lineGraph.graphXAxisPoints.count))
let labelWidth: CGFloat = 20.0
var tempLabel = UILabel()
print("i value ==>"+String(i))
var point: CGPoint = CGPoint(x: lineGraph.graphXAxisPoints[i] - labelWidth/2, y: CGFloat( lineGraph.bounds.height - 20) )
tempLabel.frame = CGRect(origin: point, size: CGSize(width: labelWidth, height: 10))
tempLabel.textAlignment = NSTextAlignment.Center
tempLabel.textColor = UIColor.blackColor()
tempLabel.tag = i+1
tempLabel.text = labelsArray[i]**
lineGraph.addSubview(tempLabel)
let view1 = lineGraph.viewWithTag(i+1)
lineGraph.addSubview(view1!)
}
print("refreshing")
self.view.setNeedsDisplay()
lineGraph.setNeedsLayout()
}
您應該將此代碼放在viewWillAppear()
然后它應該可以工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.