美文网首页
2019-11-06 UIScrollView在Xib中的快速

2019-11-06 UIScrollView在Xib中的快速

作者: zxh123456 | 来源:发表于2019-11-06 20:05 被阅读0次
  1. UIScrollView在Xib中会报Scroll View has ambiguous scrollable content height / width,原因是UIScrollView除了设置frame外,还需要contentsize。
    常规都是在UIScrollView内放一个ContainerView,在ContainerView内放置自己的控件。

1.拖入ScrollView,对View拖线,设置4边约束


image.png

2.给ScrollView增加一个子ContainerView,ContainerView对着ScrollView拖线,设置4边约束


image.png

3.ContainerView对着控制器View拖线,(竖向滚动的话:设置等宽,给一个fixed的高度)(横向滚动的话:设置等高,给一个fixed的宽度)(也可以都设置固定高度,反正就是给ContainerView设置个宽和高的约束)


image.png

4.如果是xcode11(11的bug,感谢阿三哥!!!),修改之前的拖线约束的constant = 0

5.再次吐槽下xcode11.2,就是个垃圾,只要xib拖过UITextView,跑项目就会报错Could not instantiate class named _UITextLayoutView because no class named _UITextLayoutView was found,我已经回退到Xcode11.1版本了

6.关于这个xcode11.2的XIB bug,网上有处理方法,可以在appdidFinishLaunch方法中手动强行动态加载这个类,核心代码如下

        const char *className = "_UITextLayoutView";
        Class class = objc_getClass(className);
        if (class == nil) {
            class = objc_allocateClassPair([UIView class], className, 0);
            objc_registerClassPair(class);
        }

相关文章

网友评论

      本文标题:2019-11-06 UIScrollView在Xib中的快速

      本文链接:https://www.haomeiwen.com/subject/wydpbctx.html