hitTest方法所做的工作,事件传递,图片的两种加载方式的区别,毛玻璃效果,记录一下

    xiaoxiao2026-06-12  6

    hitTest方法

    作用:去寻找最适合的view

    什么时候调用:当一个事件传递给当前View就会调用

    返回值:返回的是谁,谁就是最适合的View

    1、判断自己是否接收事件

    2、判断当前点在不在当前View  pointInside withEvent:)

    3、从后往前遍历自己的子控件,让子控件重复前两步操作,(把事件传递给,让子控件调用hitTest

    事件的传递

    UIAPPlication-UIWindow-UIVIew 寻找最适合的view

    1、当一个控件如果它的父控件不能够接收事件,那么子控件也不能接收事件

    2、当一个控件隐藏的时候,子控件也跟着隐藏

    3、当一个控件透明的时候,子控件也跟着透明

    响应者链条

    能够处理事件的对象叫响应者对象

    如果没有写touchBegan 默认做法是将事件顺着响应者链条向上传递,将事件传递给上一个响应者(就是他的父控件,没有父控件传递给controller,最后到window—>application

    图片的两种加载方式区别

    1>imageName

    a.就算指向它的指针被销毁,该资源也不会从内存中干掉

    b.放到Assets.xcassets的图片,默认就有缓存

    c.图片经常被使用

    2>imageWithContentOfFile

    a.就算指向它的指针被销毁,该资源会从内存中干掉

    b.放到项目中的图片就不带有缓存

    c.不经常用的,大批量的图片

    加毛玻璃效果

    UIToolbar * toolbar = [[UIToolbar alloc] init];

    toolbar.frame = frame;

    toolbar.barStyle = …;

    toolbar.alpha = 0.98;

    // 哪个对象需要毛玻璃就加到哪个对象上面。

    [self.imageView addSubView:toolbar];

    转载请注明原文地址: https://ju.6miu.com/read-1310455.html
    最新回复(0)