如何制作动态添加的可见故事板项目?
问题描述:
我是iOS的新手如何制作动态添加的可见故事板项目?
我需要制作动态添加的可见项目。我动态制作的所有设置,只要我启动模拟器就可以看到。
在我目前的ViewController
我添加背景和动态标注
这里我的故事板
但在这里它是如何实际上已经是
我知道获得它的方法之一是将该注释@IBDesignable
放在课堂上。我试过了,但没有。
我在做什么错?
答
最终我找到怎样的方式来实现的结果
如果你需要你的看法要显示,您需要将该视图创建为自定义。
例如背景:
创建您的自定义视图类GradientView
import UIKit
@IBDesignable class GradientView: UIView {
let backgroundGreyColor = UIColor.lightGray.cgColor
let backgroundLightGreyColor = UIColor.green.cgColor
var gradientBackground: UIColor {
set {
let gradientLayer = CAGradientLayer()
gradientLayer.frame = bounds
gradientLayer.colors = [backgroundGreyColor, backgroundLightGreyColor, backgroundGreyColor]
gradientLayer.startPoint = CGPoint(x: 0.0, y: 0.5)
gradientLayer.endPoint = CGPoint(x: 1.0, y: 0.5)
UIGraphicsBeginImageContext(gradientLayer.bounds.size)
gradientLayer.render(in: UIGraphicsGetCurrentContext()!)
let image = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
backgroundColor = UIColor(patternImage: image!)
}
get {
return backgroundColor!
}
}
}
不要忘记把注释@IBDesignable
创建自定义视图
它挠到全屏,不要忘记分配您的自定义视图
,就是这样!随意问
答
一种方法是:使您的视图IBDesignable和也执行prepareForInterfaceBuilder
按需设计视图。 (动态的“”意味着“在运行时”)故事板不是运行时的,当应用程序运行时,您的应用程序将根据需要显示,所以你没有任何问题,故事板不需要人为地模拟相同的事情,故事板是针对设计的静态部分,以图形方式构建的;代码是针对设计的动态部分,用代码构建的。没有必要使前者做后者的工作。)
“但这里它是如何实际上是”为什么它必须是这样的?如果应用程序在您运行它时运行,那么您关心故事板中显示的内容是什么? – matt
我不明白为什么这个问题没有解决?这是一个绝对正常的问题,它甚至有一个答案。我相信它可以帮助某人...为什么这有负号? –