首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

自定义视图UIView的AddTarget不起作用

是指在使用自定义的UIView时,通过AddTarget方法添加的事件处理函数无法正常触发。这可能是由于以下几个原因导致的:

  1. 事件处理函数未正确绑定:在使用AddTarget方法时,需要确保目标对象、事件处理函数和事件类型都正确绑定。可以检查一下AddTarget方法的参数是否正确设置。
  2. 事件类型不匹配:AddTarget方法的第一个参数是目标对象,第二个参数是事件处理函数,第三个参数是事件类型。需要确保事件类型与目标对象支持的事件类型相匹配。常见的事件类型包括TouchUpInside、TouchDown、ValueChanged等。
  3. 自定义视图未开启用户交互:如果自定义视图未开启用户交互功能,那么无法响应用户的触摸事件。可以通过设置自定义视图的userInteractionEnabled属性为true来开启用户交互。
  4. 自定义视图的frame或bounds设置不正确:如果自定义视图的frame或bounds设置不正确,可能导致视图无法显示在正确的位置,从而无法接收到用户的触摸事件。可以检查一下自定义视图的frame或bounds是否正确设置。

如果以上方法都没有解决问题,可以尝试使用其他方式来处理事件,例如使用手势识别器(Gesture Recognizer)来处理用户的触摸事件。腾讯云提供了丰富的云计算产品和服务,可以根据具体需求选择适合的产品。具体推荐的产品和产品介绍链接地址可以参考腾讯云官方网站的相关文档和资料。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

iOS 仿支付宝银行卡界面(支持Swift和OC)

为了实现相应功能,仿照支付宝银行卡卡包开发出相应页面,页面长这个样子: 二:说明目录 创建钱包视图容器WalletView 初始化WalletView并加载钱包头部视图walletHeader 在钱包视图中重新加载卡片视图...创建钱包视图容器WalletView 创建继承UIViewWalletView视图, 通过调用contentInset方法来控制top、left、bottom、right四个方向边距,代码如下: public...初始化WalletView并加载钱包头部视图walletHeader 在需要加载钱包地方初始化WalletView,并自定义头部视图walletHeader和卡片视图,Demo 中以ViewController...在钱包视图中重新加载卡片视图 在钱包视图中重新加载卡片视图,在这里为了灵活修改方便使用,页面布局可以自定义,Demo中模仿支付宝页面进行设计,在CardView视图中,主要实现页面的交互等功能,具体UI...// 卡片视图 @objc var bankCardView: UIView!

1.4K20

IOS基础知识第二季

视图基类 UIViewController是视图控制器基类 12.每个应用至少一个窗口,UIWindow继承UIView 自动创建(xcode4.5之后) 13.UIScreen对象可以充当...时间绑定方法,第一个是事件名称,第二个是触发条件 [startButton addTarget:self action:@selector(alertUser) forControlEvents:UIControlEventTouchUpInside...//设置tag属性 UIView *_view = [self.window viewWithTag:2];或者tag为2视图 其他属性:子视图会继承父视图属性 alpha透明度0.0~1 backgroundColor...20.颜色 [UIColor colorWithRed:75/255 green:23/255 blue:22/255 alpha:1]; [UIColor redColor]; 21.自定义UIView...SubView *_view = (SubView *)[self.window viewWithTag:110]; 这样view才能使用subview中方法 这样我们自定义UIView需要重载

96660
  • iOS14开发-UIView

    介绍 UIView 会占用屏幕上一个矩形空间。 主要处理两件事:画出矩形控件,并处理其中事件。 UIView 是层级结构,UIView 只有一个父 View,但可以有多个子 View。...内容除了设置 String 类型,还可以设置 UIView 类型,且一旦设置了 UIView,设置 String 失效。 代理方法可以设置内容高度。...核心知识 NSCollectionLayoutSize 决定了一个元素大小。表达一个元素 Size 有三种方法: fractional:表示一个元素相对于他视图比例。...(Item 视图是 Group,Group 视图是 Section) 。...如果是自定义布局,需要传入一个 NSCollectionLayoutGroupCustomItemProvider 来决定这个 Group 中 Item 布局方式。

    11.8K10

    Quartz2D复习(四) --- 图层CALayer和动画CAAnimation

    1、CALayer 1)、在ios中,能看得见摸得着东西基本上都是UIView, 比如按钮、文本标签、文本输入框、图标等,这些都是UIView 2)、UIView之所以能显示在屏幕上,完全是因为它内部一个图层...UIView显示。...UIView本身不具备显示功能,是它内部层才有显示功能 5)、通过CALayer对象,可以很方便调整UIView一些外观属性,比如:阴影、圆角大小、边框宽度和颜色。。。...、UIColor,只能使用CGImageRef、CGColorRef 8)、UIView和CALayer比较   通过CALayer,可以做出跟UIView一样界面效果;但是UIView多了一个事件处理功能...  view : 需要进行转场动画视图   options : 转场动画类型   animations : 将改变视图属性代码放在这个block中   completion : 动画结束后,会自动调用这个

    1.4K30

    Cobub无码埋点关键技术实现流程(附图)

    2.在上一步弹框中输入自定义事件名称,名称将会和视图viewPath绑定起来。viewPath是视图唯一标识,在下文中将详细讲解。...实现流程中技术点 可视化视图圈选实现 自定义UIWindow子类,当做悬浮小圆圈,添加UIPanGestureRecognizer手势,根据手势位移,设置悬浮框位移。...UIView hitTest:(CGPoint)point withEvent:(UIEvent *)event。此API自动遍历子视图,找到包含point视图,event传nil。...我们可以把App视图结构理解成树概念,树根节点是UIWindow,树枝干由UIViewController和UIView组成,叶子节点都是UIView。...带手势事件视图 hook -(void)addGestureRecognizer方法,并在方法实现中给手势对象添加新target和action ,- (void)addTarget:(id)target

    1.4K60

    【iOS开发-22】navigationBar导航栏,navigationItem建立:获取导航栏中基本文本和button以及各种跳跃

    当然可用有设置导航条标题方法setTitle,当然你也能够直接把文字换成一个视图。...有的是由文字,有的时图片,有的时系统自带的如摄像头或者Reply这些icon,有的全然是自定义视图。...//视图x和y无效。...视图上下左右居中显示在标题位置 UIView *textView1=[[UIView alloc]initWithFrame:CGRectMake(10, 10, 50, 30)];...,所谓跳转,事实上就是往导航控制器栈中PUSH或者POP一个视图控制器,这样在最上面的视图控制器就变了,这样视图也跟着变了,由于仅仅显示在栈顶得那个视图控制器视图 //所以(1)控制所谓跳转

    2.3K10

    自学Swift之路(二)UITableView自定义和实际利用

    自定义,附带场景使用(简单demo) 创建工程什么就不说了,先看一下界面然后咱们直接开始代码: ?...,这个表视图单元格是咱们自己定义 import UIKit class BuildListTableViewCell: UITableViewCell { var logoImgView...coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } } 代码中自定义单元格加上了一个...ImageView和一个Label,虽然数据是死,但是在Swift中,另外一个类是可以直接访问另一个类中变量(如果没做任何保护的话),所以我们在配置cell时候是可以直接赋值,这里就不弄了,然后我们看创建表视图那一块...} } 创建单元格时候直接使用我们自定义BuildListTableViewCell创建就行了 好了,这篇文章也完了,这只是一个非常简单demo,大家平时工作要做肯定不止这么点,哈哈哈

    2.3K90

    iOS OC swift 自定义 popover 泡泡

    棕色区域是可以设置 红色 底层箭头视图边框 白色 底层箭头视图背景颜色 蓝色 自定义内容区域,在此区域(contentView)可以添加希望展示内容 加号按钮 模拟了 sourceView...Bool /// 是否点击空白地方自动消失 /// 设置为 true 时候,空白地方可以处理触摸事件 /// 当 touchThrough 为 true 时候,此字段不起作用 arrowDirection...contentView: UIView /// 自定义内容请在此视图上增加 arrowView: KKPopoverArrowView 箭头视图 delegate: KKPopoverDelegate..., sourceView: UIView) /// 根据 sourceView 展示在指定视图中 /// - Parameters: /// - view: 添加到视图,不传则添加到 window...内部合适方向使用 open class KKPopoverArrowView: UIView 箭头视图配置项 /// 边角弧度 open var borderRadius: CGFloat

    2.7K70

    iOS_自定义UITabBarController标签视图控制器

    *selectedBtn; @end 然后开始写自己想要东西了,在viewDidLoad中: (1)删除继承父类而来tabBar,自定义自己想要视图,其frame为原来tabBarframe...UIView *myView = [[UIView alloc] init]; myView.backgroundColor = [UIColor whiteColor]; myView.frame...;也需要实现视图跳转: #pragma mark -- 自定义tabBar按钮点击事件 -(void)clickBtn:(UIButton *)sender { //设置上一个按钮...self.selectedIndex = sender.tag - 1; } 然后就基本实现了一个视图控制器功能了,自己还有什么需求可以往里加,使用就跟视图标签视图一样使用就行,只是这里按钮图片我都是在类里就赋值好了...; 这是我自定义tabBarController下载地址,需要可以下下来参考参考: http://download.csdn.net/detail/margaret_mo/9451753

    55830

    iOS事件响应控制 原

    在处理这个问题之前,我们应该先清楚IOS事件响应机制到底是个什么样原理。 首先,这个事件响应机制是分为两个部分。 1、先在视图层级关系中找到应该响应事件那个视图。...UIApplication会取出队列中最前面的事件,发消息给UIWindow,然后UIWindow会对其所有子视图调用hitTest:withEvent:这个方法,这个方法会返回一个UIView对象,...:withEvent:方法会一层一层向上找,若最上层响应视图pointInside:withEvent:返回YES,则返回此子视图,如果所有的都返回nil,则返回当前视图本身self。...可以证明,在事件视图寻找中,UIImageView我们重写hitTest:withEvent:方法后,切断了寻找链,如果我们这个做: -(UIView *)hitTest:(CGPoint)point ...2、寻找到应该响应视图后,会进行消息处理,这个处理方式是通过消息处理链来做

    54640

    简单放置一张图片,实现放大缩小旋转效果1 image和imageView区别2 创建控件显示到view上标准步骤3 CGRectOffset函数含义4 小飞机-监听四个按钮点击事件(代码)5

    设置大小. addsubview 3 CGRectOffset函数含义 待补充 4 小飞机-监听四个按钮点击事件(代码) -(void)addTarget:(nullable id)target action...形变时候frame发生变化,bounds不发生变化. self.imageView.transform = CGAffineTransformIdentity; 10添加和删除视图以及所有子视图 如何删除某个子视图...如何获取当前视图所有子视图? subviews. isKindOfClass 和 isMemberOfClass 区别?...kind 是这个类型或这个类型子类. member 只判断这个类型. 11 关于frame和bounds frame 是一个以父视图为坐标系位置 bounds 是一个以自身为坐标系位置 如果改变了...boundsx,y 会影响子控件显示位置 12 头尾式动画(了解) //- 准备开始动画 [UIView beginAnimations:nil context:nil]; //- 设置时间 [UIView

    1.1K30

    iOS UI控件了解一下

    下面我们将引入UIView; 3. UIView view(视图)代表屏幕上一个矩形区域。...UIView操作方法 1)添加视图 UIViewaddSubview:方法可以添加子视图,对于同一个视图所有子视图来讲,后添加视图会把已加视图盖在下面。...UIView提供了其他添加视图方法(详见下表): ? 2)管理视图层次 UIView除了提供添加视图方法,还提供了管理视图层次方法(详见下表): ?...常用UI控件介绍 UIView其实就是承载各种控件一个容器,很多控件都继承于UIView,只要继承UIView控件,那么就相应继承了UIView各种属性,可以说UIView视图控件之父。...6)输入控制: UITextField类提供了许多控制输入API,包括密码模式、键盘样式、自定义键盘等(详见下表) ?

    2.6K20

    事件传递、响应者链条

    ,能够处理touchesBegan等触摸事件 当一个Touch事件产生时,要先找到响应者,iOS通过Hit-Test机制来寻找响应者,每一个UIView(继承自UIResponder)都有以下方法 -...UIApplication和UIWindow通过sendEvent:方法传递事件 UIWindow 之后会通过hitTest:withEvent:方法寻找触碰点所在视图 hitTest:withEvent...:原理 // point是该视图坐标系上点 - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event { // 1.判断自己能否接收触摸事件...在视图层次结构最顶级视图,传递给ViewController ViewController将事件传递给window对象进行处理 window对象继续将事件或消息传递给UIApplication...]; button.frame = CGRectMake(100, 100, 40, 40); [button addTarget:self action:@selector(click

    88310

    【iOS 开发】iOS 开发 简介 (IOS项目文件 | MVC 模式 | 事件响应机制 | Storyboard 控制界面 | 代码控制界面 | Retina 屏幕图片适配)

    文件 与 真实文件系统中目录文件不是对应; -- 逻辑分组 : Xcode 将 真实文件进行了逻辑分组, 并不是真实文件结构; -- 自定义分组 : 开发者还可以创建自定义分组; mac 中...自定义 UI 控件 (1) 自定义组件简介 自定义组件简介 :  -- UIView 基类 : 所有的 UI 控件都继承了 UIView 基类, UI 组件在 UIView 提供空白区域上绘制具体细节...; -- 适用情况 : 在 IOS 系统提供组件不满足需求时, 就需要自定义组件; (2) UIView 基类常用方法 UIView 基类常用方法简介 :  -- "initWithFrame :"...自定义组件 流程 及 代码示例 :  -- 创建 SingleViewApplication :  -- 查看 Main.storyboard 控件 : 点击 界面设计文件中 UIView 根控件..., 使用 command + option + 3 打开身份检查器, 由身份检查器上可以看到 其 Custom Class 属性为 UIView, 因此该界面的根控件时 UIView; -- 创建自定义

    4.9K30
    领券