美文网首页
iOS UI基础回顾学习记录1

iOS UI基础回顾学习记录1

作者: 恋空K | 来源:发表于2022-09-14 14:03 被阅读0次

    1.用这个方法去加载图片[UIImage imageNamed:@""]内部是肯定有缓存的,用这个方法加载图片[UIImage imageWithContentsOfFile:@""]是没有缓存的。图片放到Assets.xcassets里面就是会有缓存的,因为这个里面的图片没办法获取到它的全路径,只能通过第一个方法去访问。
    2.控件的init方法内部会自动调用initWithFrame:方法,所以自定义控件的时候,最好重新initWithFrame:方法。


    HBCustomView.m

    1.HBCustomView *customView = [[HBCustomView alloc] init];
    方法调用如下:-----initWithFrame---
    -----init---
    因为if (self = [super init])里面会调用先调用- (instancetype)initWithFrame:(CGRect)frame方法
    2.HBCustomView *customView = [[HBCustomView alloc] initWithFrame:CGRectMake(30, 100, 300, 100)];
    方法调用如下:-----initWithFrame---
    3.HBCustomView *customView = [[HBCustomView alloc] initWithText:@"hhhh"];
    方法调用如下:-----initWithFrame---
    -----initWithText---
    因为if (self = [super init])里面会调用先调用- (instancetype)initWithFrame:
    4.HBCustomView *customView = [[HBCustomView alloc] initWithFrame:CGRectMake(30, 100, 300, 100) text:@"hhhh"];
    方法调用如下:-----initWithFrame--text-

    3.layoutSubViews是系统自动调用的,其中一种情况是:当前控件的尺寸(也就是size宽高)发生改变的时候会自动调用,改变位置(也就是x,y的值)不会调用(也就是当前控件的尺寸确定以后)。第二种情况:当前控件第一次显示的时候也会自动调用这个方法。

    4.如果一个控件是从xib中加载出来的,不设置尺寸会有默认的尺寸(默认的尺寸就是在xib中设置的尺寸大小)




    contentRect就是按钮的bounds.注意点:这两个方法谁先调用是没法确定的
    imageNamed:获取的image是不可拉伸的。第二个方法的参数的意义如下图,上下左右各有10的间距不拉伸
    设置上面的参数后,拉伸的区域
    直接在图片的配置中设置图片拉伸
    控制器中一个控件的内存结构图
    kvc取值可以代替数组遍历

    5.UIScrollView可滚动的尺寸:contentSize的尺寸 减去 scrollView的尺寸.注意点:如果contentSize的尺寸小于或者等于scrollView的尺寸,scrollView是不可以滚动的。



    自己写刷新控件的时候必备的属性
    偏移量是scrollView的左上角减去内容的左上角。设置的contentInset跟偏移量是没关系的


    代理内存图
    缩放
    int会强转,直接去掉小数点后面的,比如int(0.8)=0,int(1.4)=1

    使用代码滚动scrollView,也会调用scrollViewDidScroll:代理方法。也就是只要scrollView发生滚动(无论scrollView滚动是代码触发的还是用户主动触发的),就会调用scrollViewDidScroll:代理方法

    6.定时器一个小细节:定时器是一次性的,要么一直工作,一旦停止工作,就不能再次开启。


    aotoresizing介绍:外边四根线,选中哪一根表示把view固定在父控件的哪一侧(也就是距离父控件那一侧的间距是固定的),都选中,就代表只选中了左边和上面的。也就是说左边的优先级高于右边的,上面的优先级高于下面的。选中里面的两根线,代表控件的宽和高随着父控件的宽高进行拉伸或者压缩
    图中示例,代表把控件固定在父控件的右边和底部
    警告是因为控件当前的frame不匹配所加的约束,但是运行起来是没问题的
    图中打钩的地方选中,代表控件默认会距离左边有20的间距
    选中的时候
    未选中的时候

    相关文章

      网友评论

          本文标题:iOS UI基础回顾学习记录1

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