如何在警报视图中隐藏关闭按钮和关闭操作以仅显示“打开应用程序”按钮

Posted

技术标签:

【中文标题】如何在警报视图中隐藏关闭按钮和关闭操作以仅显示“打开应用程序”按钮【英文标题】:How to hide the close button and close action in alert view to display only "Open app" button 【发布时间】:2013-03-12 06:59:33 【问题描述】:

我已经使用链接实现了UIlocalNotification 方法

Adding Local Notifications With ios 4

在我的应用程序中,我的要求是

在通知警报中,我们只需要默认打开应用程序的"Show me" 按钮,

我们需要在通知时强制用户打开应用程序,所以通知警报中不能有关闭按钮。

只有一个按钮也显示我必须打开应用程序

怎么做?

【问题讨论】:

即使这是可能的,我怀疑这会被 App Store 接受。强制用户进入应用程序的不可忽视的通知?它也会很快被我的手机拒绝。 【参考方案1】:

如果您不想显示警报操作按钮,可以通过将hasAction 属性设置为NO 来禁用它。 请注意,如果没有操作按钮,用户将无法从警报中启动应用程序。 (如果您根本不想看到警报,您应该将alertBody 设置为nil。)

编辑:

您无法移除取消按钮。 您只能选择删除操作按钮而不是取消按钮和 As 它在UILocalNotification 的实现文件中定义,所以你可以 不要覆盖它。

【讨论】:

可以只禁用操作按钮,不能禁用取消按钮。您的摘录谈到了操作按钮 这就是我添加该链接的原因。我现在已经编辑了我的答案。您不能删除取消按钮。 如何在“查看”按钮上添加一些操作。当我收到本地通知并按下“查看”​​按钮时,它会打开应用程序,这很好,但是如果我想对“查看”按钮执行一些操作,我该怎么办?请帮帮我... @ManthanPatel 为此,您需要在应用程序委托中添加这些方法。 ***.com/questions/16140055/… 我无法让hasAction = NO 在 iOS 5、iOS 6 和 iOS 7 中都无法工作。按钮始终显示。行为改变了吗?【参考方案2】:

您无法移除取消按钮。

还有一些东西:

如果手机被锁定意味着用户看不到任何按钮(出现一个滑动按钮来执行你的showme功能)。 如果用户将通知设置更改为警报以外的设置 输入,用户甚至看不到UIAlertView

【讨论】:

【参考方案3】:

确保您的视图符合 UIAlertViewDelegate 协议:

@interface YourViewController : UIViewController <UIAlertViewDelegate> 

当您希望显示警报时,请执行以下操作:

 UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert" message:@"Message" delegate:self cancelButtonTitle:@"Show me" otherButtonTitles:nil];

如果您想在单击按钮时执行某些操作,请实现此

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex;
// the user clicked OK
if (buttonIndex == 0)

    //do something here...


【讨论】:

他说的是本地通知,而不是 UIAlertView

以上是关于如何在警报视图中隐藏关闭按钮和关闭操作以仅显示“打开应用程序”按钮的主要内容,如果未能解决你的问题,请参考以下文章

单击视图时如何隐藏警报或关闭警报

关闭自定义警报视图并解除 segue 问题?

没有按钮的 UIAlertView 以及如何关闭它

隐藏不同视图控制器的子视图

如何使用多个自定义按钮和背景图像显示警报消息? [关闭]

为啥拍照后图像按钮隐藏在表面视图后面? [关闭]