iOS,界面构建器错误与调整类和IBInspectables?

iOS,界面构建器错误与调整类和IBInspectables?,第1张

概述我不知道发生了什么事,我正在努力解决这个问题,我正在尝试为代码中的不同大小调整类来满足使用IBInspectables的一些特殊情况. 在模拟器上,以下代码在iPad,iPhone 4和iPhone 6上按预期工作. 但是在界面构建器中,只预览任何/任何和常规/常规工作. 这好像是个bug? 或者有没有人对可能有效的替代方法有任何建议? - (void)drawRect:(CGRect)rect 我不知道发生了什么事,我正在努力解决这个问题,我正在尝试为代码中的不同大小调整类来满足使用IBInspectables的一些特殊情况.

在模拟器上,以下代码在iPad,iPhone 4和iPhone 6上按预期工作.

但是在界面构建器中,只预览任何/任何和常规/常规工作.

这好像是个BUG?
或者有没有人对可能有效的替代方法有任何建议?

- (voID)drawRect:(CGRect)rect {// Drawing codeCGfloat l_borderWIDth = self.AaborderWIDth; // 8.5CGfloat l_cornerRadius = self.AaCornerRad; // 33CGfloat l_shadHeight = self.AaShadHeight; // 15.1CGfloat l_textYOffset = self.AaTextYOffset; // 6.1if (self.traitCollection.horizontalSizeClass == UIUserInterfaceSizeClassCompact){    if (self.traitCollection.verticalSizeClass == UIUserInterfaceSizeClassCompact)    {        //iphone3.5 / 4 / 4.7 landscape        l_borderWIDth = self.CcborderWIDth;        l_cornerRadius = self.CcCornerRad;        l_shadHeight = self.CcShadHeight;        l_textYOffset = self.CcTextYOffset;    }}if (self.traitCollection.horizontalSizeClass == UIUserInterfaceSizeClassRegular){    if (self.traitCollection.verticalSizeClass == UIUserInterfaceSizeClassRegular)    {        //ipad landscape        l_borderWIDth = self.RrborderWIDth;        l_cornerRadius = self.RrCornerRad;        l_shadHeight = self.RrShadHeight;        l_textYOffset = self.RcTextYOffset;    }    if (self.traitCollection.verticalSizeClass == UIUserInterfaceSizeClassCompact)    {        //iphone6+        l_borderWIDth = self.RcborderWIDth;        l_cornerRadius = self.RcCornerRad;        l_shadHeight = self.RcShadHeight;        l_textYOffset = self.RcTextYOffset;    }}

编辑:我也尝试了以下方法

- (voID)layoutSubvIEws{    [super layoutSubvIEws];    [self setSizingClassValues];}- (voID)traitCollectionDIDChange:(uitraitcollection *)prevIoUsTraitCollection{    [super traitCollectionDIDChange:prevIoUsTraitCollection];    [self setSizingClassValues];}- (voID)updateConstraints{    [self setSizingClassValues];    [super updateConstraints];}

.

- (instancetype)initWithFrame:(CGRect)frame{    if (self = [super initWithFrame:frame])    {        [self setSizingClassValues];    }    return self;}- (voID)awakeFromNib{    [super awakeFromNib];    // Run time,loading from xib.}- (voID)prepareForInterfaceBuilder{    [super prepareForInterfaceBuilder];    // Design time.    [self setSizingClassValues];}
解决方法 我查看了代码,对我而言,似乎它正在运行代码.你到底想要完成什么?你能描述一下吗?我认为这是Xcode的一个错误.请注意,第一个看起来正确.我明白,如果我不够描述,但你能不能告诉我你想做什么?抱歉给你带来不便! 总结

以上是内存溢出为你收集整理的iOS,界面构建器错误与调整类和IBInspectables?全部内容,希望文章能够帮你解决iOS,界面构建器错误与调整类和IBInspectables?所遇到的程序开发问题。

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

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

原文地址: https://outofmemory.cn/web/1003417.html

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

发表评论

登录后才能评论

评论列表(0条)

保存