开发过程中常见的问题

1.UIScrollView的自动布局

在storyBoard中使用自定义布局拖入一个UIScrollView控件,在UIScrollView控件上添加其他控件就会报错,因为UIScrollView控件内容的宽度和高度不确定;但是通过代码创建UIScrollView控件的话,要想显示,必须设置UIScrollView控件的frame,不需要另外设置UIScrollView的内容的宽度和高度

用自动布局使用scrollView步骤

1.确定scrollView内容范围

2.如何确定scrollView内容范围

2.1添加一个子控件,这个子控件不是用来显示的,作用:确定scrollView内容范围

2. 2  通过自动布局可以确定这个子控件距离UIScrollView的上下左右的艰巨,只要在确定这个子控件的宽度和高度,那么UIScrollView的内容的宽度 = 左间距 + 右间距 + 子控件的宽度

UIScrollView内容的高度 = 上间距 + 下间距 + 子控件的高度

补充:

1.若要UIScrollView只在垂直方向滚动,设置子控件距离UIScrollView的上下左右间距都为0,然后设置子控件的宽度等于屏幕或者控制器view的宽度,子控件的高度随便等于一个大于屏幕高度的值即可,根据自己的需要的滚动范围设置

2.若要UIScrollView在垂直方向和水平方向都可以滚动,设置子控件距离UIScrollView的上下左右间距都为0,然后设置子控件的宽度等于一个大于屏幕宽度的值即可,子控件的高度随便等于一个大于屏幕高度的值即可,根据自己的需要的滚动范围设置

2.通过size和center设置一个控件的尺寸

1.如果size是frame中取出,一定要先设置尺寸,在设置中心,因为只有确定了尺寸,才知道这个控件的中心点

先设置尺寸,在设置中心点,才能是想要的位置;

如果先设置中心点,在设置尺寸,那么就不是我们想要的位置了.先设置中心点,没有尺寸中心点不确定,没有尺寸控件就相当于一个点,只会把整个控件放在我们设置的中心点上,因为size是从frame中去出来的,在设置尺寸的时候,是以左上角为原点,向下方扩散至我们设置控件的尺寸,那么设置的所谓中心点的位置就成了控件左上角的位置了,而控件实际的中心点并不在我们设置的地方

size从frame中获取

>1养成习惯,先设置尺寸


开发过程中常见的问题_第1张图片

>2再设置中心点


开发过程中常见的问题_第2张图片

2.如果sizebounds取出,就不需要担心设置的先后顺序,无论谁先谁后,都是我们想要的设置.因为,控件不设置尺寸,相当于一个点,放置在我们设置的中心点位置,然而size从bounds中取出,当我们设置尺寸的时候,是以中心点向四周扩散至我们设置的尺寸,控件的中心点就在我们设置的位置上;我们先设置尺寸,有了尺寸,就确定了控件的中心点,再设置中心点的位置,我们直接拿着控件的中心点放置在我们设置的中心点的位置上,所以无论先设置谁,都是我们想要的结果


开发过程中常见的问题_第3张图片


开发过程中常见的问题_第4张图片

总结:当我们需要通过size和center来设置控件尺寸的时候,一定要养成一个习惯:先设置尺寸(size),在设置中心点(center);

你可能感兴趣的:(开发过程中常见的问题)