sách gpt4 ai đã đi

iphone - 如何实现自定义控制的目标 Action 机制?

In lại 作者:行者123 更新时间:2023-12-03 18:21:53 35 4
mua khóa gpt4 Nike

我将编写自己的自定义控件,它与 UIButton 有很大不同。由于差异太大,我决定从头开始编写。所以我所有的子类都是 UIControl。

当我的控件在内部被触摸时,我想以目标操作的方式触发一条消息。该类的用户可以实例化它,然后为此事件添加一些目标和操作。

即想象一下我会在内部调用一个方法 -fireTargetsForTouchUpEvent。我怎样才能在类里面维持这种目标行动机制?我是否必须将所有目标和操作添加到我自己的数组中,然后只在 for 循环中调用目标对象上的选择器(操作)?或者有更智能的方法吗?

我想提供一些方法来为某些事件(例如触摸事件)添加目标和操作(当发生这种情况时,我通过调用内部方法来手动引发)。有什么想法吗?

1 Câu trả lời

我只是想澄清@Felixyz 所说的内容,因为一开始我并不清楚。

如果您要子类化 UIControl ,即使您要进行自定义事件,您也不必跟踪自己的目标/操作。功能已经存在,您所要做的就是在子类中调用以下代码来触发事件:

[self sendActionsForControlEvents:UIControlEventValueChanged];

然后在实例化您的自定义的 View 或 View Controller UIControl ,就这样做

[customControl addTarget:self action:@selector(whatever) forControlEvents:UIControlEventValueChanged];

对于自定义事件,只需定义您自己的枚举(例如, UIControlEventValueChanged bình đẳng 1 << 12 )。只需确保它在UIControlEventApplicationReserved定义的允许范围内即可。

关于iphone - 如何实现自定义控制的目标 Action 机制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1288978/

35 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com