最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS超出父控件范圍無法點擊問題解決

 更新時間:2023年06月26日 17:24:29   作者:螢火駐守心間  
這篇文章主要介紹了iOS超出父控件范圍無法點擊問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

場景

橙色view添加在藍色view上,滿足點擊超出藍色view部分可以響應(yīng)事件

實現(xiàn)思路

重寫底部藍色view的hitTest方法,從最上層依次遍歷子控件,判斷觸摸點是否在子控件上,在的話就返回子控件的hitTest方法,不在就返回self

完整代碼

#import "ViewController.h"
#import "BotView.h"
@interface ViewController ()
@property(strong, nonatomic) BotView *botView;
@property(strong, nonatomic) UIView *topView;
@end
@implementation ViewController
- (void)viewDidLoad {
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor whiteColor];
    // Do any additional setup after loading the view.
    self.botView = [BotView new];
    self.topView = [UIView new];
    [self.view addSubview:self.botView];
    [self.botView addSubview:self.topView];
    self.botView.frame = CGRectMake(100, 100, 100, 100);
    self.topView.frame = CGRectMake(0, 0, 50, 200);
    self.botView.backgroundColor = [UIColor linkColor];
    self.topView.backgroundColor = [UIColor orangeColor];
    UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(topViewClick:)];
    [self.topView addGestureRecognizer:tap];
}
- (void)topViewClick:(UITapGestureRecognizer *)tap {
    NSLog(@"點擊了頂部view");
}
@end

botView代碼

#import "BotView.h"
@implementation BotView
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
    int count = (int)self.subviews.count;
    for (int i=count-1; i>=0; i--) {
        UIView *subView = self.subviews[i];
        //點擊事件作用在子控件上面,返回點擊點
        CGPoint isPoint = [self convertPoint:point toView:subView];
        UIView *subv = [subView hitTest:isPoint withEvent:event];
        if (subv) {
            return subv;
        }
    }
    return self;
}
@end

以上就是iOS超出父控件范圍無法點擊問題解決的詳細內(nèi)容,更多關(guān)于iOS父控件無法點擊的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • iOS 動畫實戰(zhàn)之釣魚小游戲?qū)嵗a

    iOS 動畫實戰(zhàn)之釣魚小游戲?qū)嵗a

    最近小編做了一個釣魚小游戲,平時沒有做過,所以上手有點急躁,不過,最終還是實現(xiàn)了,下面小編給大家分享iOS 動畫實戰(zhàn)之釣魚小游戲的實現(xiàn)思路,感興趣的朋友一起看看吧
    2018-02-02
  • iOS 對plist文件進行讀寫,增刪改查的實例

    iOS 對plist文件進行讀寫,增刪改查的實例

    下面小編就為大家?guī)硪黄猧OS 對plist文件進行讀寫,增刪改查的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • iOS自定義鍵盤切換效果

    iOS自定義鍵盤切換效果

    這篇文章主要為大家詳細介紹了iOS自定義鍵盤切換效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-04-04
  • iOS 實現(xiàn)模糊搜索的功能

    iOS 實現(xiàn)模糊搜索的功能

    模糊搜索的實現(xiàn)思路是當搜索框開始編輯時對搜索框中的文本與后臺給的資源相對比,包含搜索文本的展示在tableview中
    2016-12-12
  • IOS 字符串常用處理詳細介紹

    IOS 字符串常用處理詳細介紹

    這篇文章主要介紹了IOS 字符串常用處理詳細介紹的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • IOS小組件實現(xiàn)時鐘按秒刷新功能

    IOS小組件實現(xiàn)時鐘按秒刷新功能

    小組件運行在單獨的進程,如果異常會導致小組件進程卡死了,一個小組件出問題,其他小組件都不刷新了。既然刷新這么難控制,怎么實現(xiàn)數(shù)字時鐘按秒刷新呢?接下來通過代碼給大家介紹下ios小組件刷新功能的實現(xiàn),一起看看吧
    2021-05-05
  • iOS中的導航欄UINavigationBar與工具欄UIToolBar要點解析

    iOS中的導航欄UINavigationBar與工具欄UIToolBar要點解析

    UINavigation可以附著于導航控制器之中使用,也可以在controller中單獨使用,這里我們將來看iOS中的導航欄UINavigationBar與工具欄UIToolBar要點解析.
    2016-06-06
  • iOS 控件封裝(又名擰螺絲)之排序按鈕的開發(fā)

    iOS 控件封裝(又名擰螺絲)之排序按鈕的開發(fā)

    排序按鈕是實際開發(fā)中比較常見的一種控件,這篇文章主要介紹了iOS 開發(fā)之排序按鈕,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-12-12
  • 詳解 swift3.0 可選綁定共用同一塊內(nèi)存空間的實例

    詳解 swift3.0 可選綁定共用同一塊內(nèi)存空間的實例

    這篇文章主要介紹了詳解 swift3.0 可選綁定共用同一塊內(nèi)存空間的實例的相關(guān)資料,希望通過本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • iOS中關(guān)于Taptic-Engine震動反饋的深入解析

    iOS中關(guān)于Taptic-Engine震動反饋的深入解析

    這篇文章主要給大家介紹了關(guān)于iOS中關(guān)于Taptic-Engine震動反饋的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-11-11

最新評論

剑河县| 甘洛县| 武川县| 宁陵县| 桃江县| 嘉荫县| 庆城县| 公主岭市| 繁昌县| 乌兰察布市| 平潭县| 临沭县| 额尔古纳市| 台前县| 汽车| 封丘县| 卓资县| 南安市| 大邑县| 河间市| 商河县| 河源市| 黎平县| 富宁县| 图木舒克市| 霍州市| 城固县| 乳源| 新民市| 中阳县| 荔波县| 万宁市| 桐庐县| 肃南| 阿勒泰市| 清涧县| 自治县| 峡江县| 屯留县| 尼玛县| 高密市|