Apple会接受定制的UIAlert吗?

时间:2011-07-05 14:40:38

标签: iphone objective-c appstore-approval

我刚刚阅读了 iOS人机界面指南。在关于警报,操作表和模态视图的章节中(参见here),我找到了这一行:

  

警报的背景外观   是系统定义的,不可能   改变。

在我的应用程序中,我创建了自己的UICustomAlert,继承自UIAlertView类,以下方法:

- (id)initWithImage:(UIImage *)image andButton:(UIButton *)button
{
    if (self == [super init])
    {
        self.backgroundImage = image;
        self.bigButton = button;
    }
    return self;
}

- (void)drawRect:(CGRect)rect
{
    CGSize imageSize = self.backgroundImage.size;
    [self.backgroundImage drawInRect:CGRectMake(0, 0, imageSize.width, imageSize.height)];
    [self addSubview:bigButton];
}

- (void) show
{
    [super show];

    CGSize imageSize = self.backgroundImage.size;
    self.bounds = CGRectMake(0, 0, imageSize.width, imageSize.height);
}

- (void)didAddSubview:(UIView *)subview
{
    if ([subview isMemberOfClass:[UIImageView class]])
        [subview removeFromSuperview];
}

我以这种方式创建我的UICustomAlert:

UIAlertView *alert = [[UICustomAlert alloc] initWithImage:backgroundImage andButton:bigButton];
[alert show];

它允许我显示具有透明背景的UIAlert,并且只显示一个图像(backgroundImage)。


但是知道iOS HIG中的内容,您认为Apple会拒绝该应用吗?

感谢。

1 个答案:

答案 0 :(得分:1)

我的直觉是你可能安全。没有什么可以阻止你从头开始实现这样的东西。但是我因为没有关注HIG而拒绝了应用程序(他们不喜欢我讲错误信息的方式),所以它们不仅仅是“指南”。