iOS开发里面关于在StoryBoard如何调用xib自定UIView?
黄舟
黄舟 2017-04-17 16:45:50
0
1
171

想请教一下各位大大,本人最近研究如何把一些控件抽出来复用,就遇到这个问题。

问题是这样的,创建一个UIView,简称V1,背景颜色设置成红色,设置size Freedom,大小300 X 300,左上弄一个Button,左下弄一个Button,分别设置好左上,还有右下等宽高约束。然后在控制器的StoryBoard里面创建一个一个UIView,简称V2, 大小 200 X 200,按照多种网上的方法,比如设置StoryBoard里面V2的class是V1...,或者什么都不设置,在m文件配置nib...等方法,我最后只能显示左上的Button,看不到右下角的label。又或者看到两个子空间,但是红色部分200x200,右下角的Button就会超出红色部分父控件的View。

现在就是想请教一下,如何能在StoryBoard里面,创建一个UIView,然后调用我自定义UIView的内容,通过修改在StoryBoard里面的View的大小,在加了约束的时候,不会出现以上子控件超出父控件的情况?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(1)
大家讲道理

uiview默认是不带Xib的但是可以通过手动添加,之前项目里面越到过这种情况:创建一个空的Xib,xib的size设置为freedom,然后和对应的类关联,在类里面实现如下方法

  • (TextXibView*)textXibView
    {
    NSArray *nibView = [[NSBundle mainBundle]loadNibNamed:@"TextXibView" owner:nil options:nil];
    return [nibView objectAtIndex:0]; // 这个方法是为了拿出xib视图
    }

这样的话uiview和类已经关联好了,在其他任何地方调用就可以了。
TextXibView *textView = [TextXibView textXibView];
textView.frame = CGRectMake(100, 500, 200, 200);

或者这里有篇文章可以参考一下http://www.cnblogs.com/wendingding/p/3750378.html

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!