Iphone 带有自定义按钮的自定义UIAlertView

Iphone 带有自定义按钮的自定义UIAlertView,iphone,objective-c,ios,ios4,uialertview,Iphone,Objective C,Ios,Ios4,Uialertview,我需要显示一个自定义UIAlertView,它将有一个图像作为背景和两个自定义按钮,这将不是常规的UIAlertView按钮。这些按钮也将定制,并将有自己的艺术作品 上面的例子有一个背景,但我也想在上面添加自定义按钮 我遵循指南,但我不认为它解决了自定义按钮处理 怎么做?有什么想法吗?苹果似乎不喜欢你过度定制UIAlertView,我也听说过很多次他们因为它拒绝了一个应用进入应用商店 由于您所追求的定制程度,我建议您创建自己的新警报类,该类具有动画和背景阴影等功能,并带有可自定义位置/外观的按

我需要显示一个自定义UIAlertView,它将有一个图像作为背景和两个自定义按钮,这将不是常规的UIAlertView按钮。这些按钮也将定制,并将有自己的艺术作品

上面的例子有一个背景,但我也想在上面添加自定义按钮

我遵循指南,但我不认为它解决了自定义按钮处理


怎么做?有什么想法吗?

苹果似乎不喜欢你过度定制UIAlertView,我也听说过很多次他们因为它拒绝了一个应用进入应用商店


由于您所追求的定制程度,我建议您创建自己的新警报类,该类具有动画和背景阴影等功能,并带有可自定义位置/外观的按钮。

苹果似乎不喜欢您过度定制UIAlertView,我也听说过很多情况,他们拒绝一个应用进入应用商店,因为它


由于您所追求的自定义程度,我建议您创建自己的新警报类,该类可以在中设置动画,并带有背景阴影等按钮,您可以自定义警报的位置/外观。

我发现Jeff LaMarche的这篇博文对创建自定义警报视图非常有帮助:。他经历了创建自定义类的步骤,因为修改UIAlertView可能会导致应用商店拒绝(但是他警告说,使用自定义技术仍然会导致高违规,但我怀疑它们是否会影响您的尝试)。完成后,您将拥有一个自定义警报视图类,该类可以以与UIAlertView几乎相同的样式添加:

CustomAlertView *alert = [[CustomAlertView alloc] init];
alert.delegate = self;
[alert show];
[alert release];
在这一点上,我们完成了。我们现在可以 使用此自定义警报视图的方式与 与我们使用UIAlertView的方式相同:

CustomAlertView *alert = [[CustomAlertView alloc] init];
alert.delegate = self;
[alert show];
[alert release];

他创建了一个自定义文本输入视图。显然,在您的情况下,您可能希望使用不同的背景,而不是添加一个文本字段,您只会坚持使用按钮。由于Jeff LaMarche在其视图中也制作了自定义按钮,因此它应该可以满足您的所有需求(如果不是更多的话)。

我发现Jeff LaMarche的这篇博文对创建自定义警报视图非常有帮助:。他经历了创建自定义类的步骤,因为修改UIAlertView可能会导致应用商店拒绝(但是他警告说,使用自定义技术仍然会导致高违规,但我怀疑它们是否会影响您的尝试)。完成后,您将拥有一个自定义警报视图类,该类可以以与UIAlertView几乎相同的样式添加:

CustomAlertView *alert = [[CustomAlertView alloc] init];
alert.delegate = self;
[alert show];
[alert release];
在这一点上,我们完成了。我们现在可以 使用此自定义警报视图的方式与 与我们使用UIAlertView的方式相同:

CustomAlertView *alert = [[CustomAlertView alloc] init];
alert.delegate = self;
[alert show];
[alert release];

他创建了一个自定义文本输入视图。显然,在您的情况下,您可能希望使用不同的背景,而不是添加一个文本字段,您只会坚持使用按钮。由于他在视图中也制作了自定义按钮,因此即使不能满足更多需求,也应该满足您的所有需求。

不幸的是,苹果不允许将UIAlertView子类化:

CustomAlertView *alert = [[CustomAlertView alloc] init];
alert.delegate = self;
[alert show];
[alert release];
UIAlertView类旨在按原样使用,而不是按原样使用 支持子类化。此类的视图层次结构是私有的,并且 不能修改

最简单的方法是创建具有类似行为的类

下面是一个例子:

不幸的是,苹果不允许对UIAlertView进行子类化:

CustomAlertView *alert = [[CustomAlertView alloc] init];
alert.delegate = self;
[alert show];
[alert release];
UIAlertView类旨在按原样使用,而不是按原样使用 支持子类化。此类的视图层次结构是私有的,并且 不能修改

最简单的方法是创建具有类似行为的类

下面是一个例子: