Objective-C对象可以成为自己的委托吗?这是很好的编程习惯吗?

时间:2012-11-09 14:52:23

标签: objective-c ios cocoa delegates

我知道这是可能的,但它真的是一个很好的编程习惯吗?我们的想法是继承UIAlertView并将自己订阅为我自己的委托,以便能够添加按钮和块处理程序。这样,当我得到alertView:clickedButtonAtIndex:时,我会调用传递的块。

我希望这是可以理解的。这是一个很好的编程实践吗?

更新:以下是我对https://github.com/ianmurrays/IMAlertView的看法。任何评论将不胜感激。

2 个答案:

答案 0 :(得分:5)

是的,你是对的,任何类或对象都可以成为任何其他人的代表,甚至是自己的代表。但我会说这不是一个好习惯。您可以创建其他类并将其委托给其他人。它使工作实现分叉,并保持可读性。并且将来您可以用更少的人力来更新代码。

答案 1 :(得分:0)

您可以创建一个类别以将块行为添加到UIAlertView。您可以查看this