【问题标题】:How to create UIAlertView with multiple options?如何创建具有多个选项的 UIAlertView?
【发布时间】:2012-11-28 21:22:44
【问题描述】:

我正在尝试研究如何使用 UIAlertView 执行多个命令。

基本上,在我的 ViewController 中,已经有一个 alertView,但是我现在添加了一些 storekit 文件,这些文件需要有自己的 alertView(告诉它是购买应用内还是取消等。

这是原始的alertView代码;

- (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    [alertView dismissWithClickedButtonIndex:0 animated:NO];
    if (buttonIndex == 1) {
        [g_GameUtils removeAlbumFolder:deleteIndex];
        [g_GameUtils readAllData];
        [g_GameUtils getAlbumFolderList];
        [m_pTable reloadData];
    }
}

这也是我需要的——它们都被称为 alertView 所以我不能像这样同时使用它们,有没有办法将它们结合起来?还是称其中之一为 alertView2 更好?如果是这样,它如何知道要调用哪一个来发出特定警报?

提前致谢!

克里斯

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    if (buttonIndex == 0){
        //cancel button clicked. Do something here or nothing here
    }
    else{
        //other button indexes clicked
        [[MKStoreManager sharedManager] buyFeature:@"com.davis.apptoken.buy"];
    }

}

【问题讨论】:

  • 您是否有参考资料,例如 self.alertView 和 self.alertView2,如果有,您可以比较 if(alertView == self.alertView) 等或 isEqual:
  • 嗨,不,我没有参考资料,有没有简单的方法可以做到这一点?非常感谢,克里斯
  • 我想您可以设置不同按钮的索引... f.e 从 1 到 3 用于第一个 alertView,从 4 到 6 用于第二个... 0 用于取消按钮。
  • @InjectIOS 不,你不能这样设置按钮索引。

标签: iphone objective-c xcode ios5


【解决方案1】:

你也可以使用 alertView.tag = 1;和 alertView2.tag = 2;并为委托添加适当的条件:

if (alertView.tag == 1) 
{
    // First alert 
} 

【讨论】:

  • 嗯,我还在挣扎:)
  • [yourAlertView release] 之前用yourAlertView.tag = 1; 标记它。然后在alertView:clickedButtonAtIndex:,做if (alertView.tag == 1){if (buttonIndex == 0) {//Button 0 of alertView tagged 0 pressed}}...
猜你喜欢
  • 1970-01-01
  • 2015-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-10
  • 2013-04-29
  • 1970-01-01
  • 2018-03-31
相关资源
最近更新 更多