swift IBDesignable视图不在故事板中显示

swift IBDesignable视图不在故事板中显示,第1张

概述我想定制一个5星级的UIView,我也希望它能在故事板中呈现.所以我决定使用@IBDesignable和@IBInspectable.以下是我的代码. import UIKit@IBDesignableclass RatingView: UIView { override init(frame: CGRect) { super.init(frame: frame) 我想定制一个5星级的UIVIEw,我也希望它能在故事板中呈现.所以我决定使用@IBDesignable和@IBInspectable.以下是我的代码.

import UIKit@IBDesignableclass ratingVIEw: UIVIEw {    overrIDe init(frame: CGRect) {        super.init(frame: frame)        setUpVIEw()    }    required init(coder aDecoder: NSCoder) {        super.init(coder: aDecoder)        setUpVIEw()    }    func setUpVIEw() {        let imageVIEw = UIImageVIEw(frame:CGRectMake(0,50,50))        imageVIEw.image = UIImage(named: "star")        addSubvIEw(imageVIEw)    }}

然后在我的故事板中,我将UIVIEw拉入我的画布,并将Custom类设置为我的自定义视图作为ratingVIEw.编译器开始编译storyboard文件,我只是等待自定义视图在canvas中呈现.这是截图.

状态是“最新的”,但视图尚未渲染.视图只是保持白色,我想看到的是我添加到父视图的图像.
当我使用UILabel而不是UIImageVIEw时,标签是在画布中渲染而不是UIImageVIEw,我如何在画布中渲染可爱的星形图像.(Images.xcassets有star.png文件)

使用UILabel而不是UIImageVIEw

func setUpVIEw() {    let label = UILabel(frame: CGRectMake(0,50))    label.text = "text"    addSubvIEw(label)}

结果:

解决方法 我试图做同样的事情.您需要将视图放在框架中.正如@Benson Tommy在评论中所说,看看2014年WWDC会议411.

以下是会话的链接:https://developer.apple.com/videos/wwdc/2014/#411

以下是会议记录的链接:http://asciiwwdc.com/2014/sessions/411

总结

以上是内存溢出为你收集整理的swift IBDesignable视图不在故事板中显示全部内容,希望文章能够帮你解决swift IBDesignable视图不在故事板中显示所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1015679.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存