欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

关于NSStringFromClass的一点见解

程序员文章站 2022-09-04 16:50:09
今天做项目的时候遇到一个需求,就是子view视图弹出时,屏蔽掉父view的所有手势,然后想到用 UIGestureRecognizerDelegate代理方法,中间省一些文字(无奈脸),言归正传,NSStringFromClass其实是用来判断类型的,看代码 好尴尬的我。。。。屏蔽掉父view的所有 ......

今天做项目的时候遇到一个需求,就是子view视图弹出时,屏蔽掉父view的所有手势,然后想到用

uigesturerecognizerdelegate代理方法,中间省一些文字(无奈脸),言归正传,nsstringfromclass其实是用来判断类型的,看代码

mymodel *model=[mymodel  alloc] init];

bool dd=nsstringfromclass([[model class]isequaltostring:@"nsdictionary"]);
//判断model是否为nsdictionary类型

好尴尬的我。。。。屏蔽掉父view的所有手势直接创建一个大小高度和父view一样的view,将view添加到window中,在将子view添加到view,此时可以在子view进行所有手势,点击到父view时是没有反应的。上代码

uiwindow *window = [uiapplication sharedapplication].keywindow;
    _vi_max=[[uiview alloc]initwithframe:cgrectmake(self.view.frame.origin.x, self.view.frame.origin.y, k_screen_width, k_screen_height)];
    _vi_max.backgroundcolor=[uicolor colorwithred:153.0/255 green:153.0/255 blue:153.0/255 alpha:0.5];
    [window addsubview:_vi_max];
    _vi=[[uiview alloc]initwithframe:cgrectmake((k_screen_width-120)/2, (k_screen_height-80)/2, 120, 80)];
    _vi.backgroundcolor=[uicolor whitecolor];
    [_vi_max addsubview:_vi];

    uibutton *quxiao=[[uibutton alloc]initwithframe:cgrectmake(0,0, 50, 50)];
    [quxiao settitle:@"取消" forstate:uicontrolstatenormal];
    quxiao.backgroundcolor=[uicolor orangecolor];
    [quxiao addtarget:self
                             action:@selector(btnclick_about_us:)
                   forcontrolevents:uicontroleventtouchupinside];
    [_vi addsubview:quxiao];

一般用于自定义弹框。      图示:关于NSStringFromClass的一点见解