我试图在一个人注册时显示文本。下一个屏幕显示一个带有文本“Checking Credentials......”的旋转微调器,但是它的功能并未在屏幕中间正确显示文本
func rotatingspinner()
{
processingView = UIView()
processingView.frame = self.view.bounds
processingView.backgroundColor = UIColor(red: 0.0/255.0, green: 113.0/255.0 , blue: 138.0/255.0, alpha: 0.97)
processLabel = UILabel()
let device = Device()
if device == .iPhone6sPlus {
processLabel.frame = CGRectMake(145,410,160,30)
}
if device == .iPhone6s {
processLabel.frame = CGRectMake(125,375,160,30)
}
if device == .iPhone6Plus {
processLabel.frame = CGRectMake(145,410,160,30)
}
if device == .iPhone6 {
processLabel.frame = CGRectMake(125,375,160,30)
}
if device == .iPhone5s {
processLabel.frame = CGRectMake(100,325,160,20)
}
if device == .iPhone5 {
processLabel.frame = CGRectMake(100,325,160,20)
}
if device == .iPhone4s {
processLabel.frame = CGRectMake(100,275,160,20)
}
if device == .iPhone4 {
processLabel.frame = CGRectMake(100,275,160,20)
}
processLabel.text = "Checking Credentials......"
processLabel.font = UIFont(name: "Arial", size: 15.0)
processLabel.textColor = UIColor.whiteColor()
processingView.addSubview(processLabel)
self.processingView.addSubview(activityIndicator)
activityIndicator.center = self.processingView.center
activityIndicator.startAnimating()
self.view.addSubview(processingView)
}
如何将 screensize.window 设置为 frame 并设置 frame 以将文本保持在中间
最佳答案
正如尼克所说,你应该开始学习自动布局。对于您的代码,您实际上并不需要拥有所有这些。您需要计算标签的框架以确保其位于中心。您可以通过以下方式做到这一点
let labelHeight = CGFloat(30)
let labelWidth = CGFloat(160)
let labelX = (processingView.frame.size.width - labelHeight)/2
let labelY = (processingView.frame.size.height - labelWidth)/2
processLabel.frame = CGRectMake(labelX, labelY, labelWidth, labelHeight)
关于ios - 文本显示不正确。该功能的文本应放置在屏幕中央,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35144037/