gpt4 book ai didi

objective-c - 自定义 UIView 的事件

转载 作者:太空狗 更新时间:2023-10-30 03:42:36 25 4
gpt4 key购买 nike

为我的 UIView 子类注册事件的最佳方式是什么,以便我可以将它们连接到界面构建器中的 IBAction-s?

目前,我刚刚将一个标准的 UIView 拖放到我的主视图上,并将该类设置为“RadioDial”(我的自定义类)。这可以很好地显示 View ,但我不知道如何从中获取事件。

谢谢

最佳答案

请澄清:您的意思是您希望 Interface Builder 提供您的 View Controller 来连接您的 View 子类将发出的自定义事件(很像 Button 控件允许您连接 Touch Inside 等)?

如果您需要这种类型的功能,您将需要在您的 View 上使用通用的“委托(delegate)”属性并结合协议(protocol)。

@protocol RadioDialDelegate
-(void)dialValueChanged:(id)sender
@end

@interface RadioDial
{
id<RadioDialDelegate> radioDelegate;
}
@property (nonatomic, assign) IBOutlet id<RadioDialDelegate> radioDelegate;

这将允许 Controller 连接到 View (假设它实现了 RadioDialDelegate)并接收来自 View 的任何事件。或者,您可以使用无类型委托(delegate),并在您的 View 代码中使用后期绑定(bind)调用:

if([radioDelegate respondsToSelector:@selector(dialValueChanged:)]) {
[radioDelegate dialValueChanged:self];
}

关于objective-c - 自定义 UIView 的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/906762/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com