创build自定义的UIButton类

我想知道做下面的最好方法,

  1. 创build许多button。
  2. 允许每个button被定制的stringID'ed。

我读到,也许inheritanceUIView可能工作,但是这个子类化UIButton将是不可能的。 另外,如果我要UIView的子类,然后用一个button填充框架,将添加到屏幕上的这50个会导致任何性能问题,显然graphics将与此有关。 但是有没有更简单的方法?

我发现子类化UItableviewcell非常容易,我只想快速提示或者简单的代码来告诉我如何类似于UIButton。

谢谢!

最好的方法是使用UIViewtag属性。 ( UIButtonUIView一个子类。) tag只是一个整数,所以它非常适合循环等等。 不用说,它也适用于子类。

这个方法也出现在很多苹果的例子中。 这很方便,因为你不需要保留任何其他variables。 此外,还有非常实用的方法通过viewWithTag访问button:

 UIButton *button = (UIButton *)[theSuperView viewWithTag:i]; 

例如,我用这种方法实现了一个钢琴键盘。 编写一个标识每个键(或音高)的algorithm非常简单。

如果你真的想要UIButton子类,那么你可以做到这一点。 但是,如果您调用+buttonWithType来直接实例+buttonWithType类而不是UIButton ,则可能会遇到问题。

如果你想要添加一个自定义的NSString或其他对象来关联每个button,那么你可以使用关联引用来做到这一点。

你可以使用for循环一次创build多个button,如果你不想立即将它们添加到子视图,可能需要NSArray的帮助来保存button。

另一种方法是创build一个NSDictionary ,其中的对象是UIButton ,键是您想要标识每个button的NSString