繁体   English   中英

如何通过 UIActionSheet 传递 arguments?

[英]How can I pass arguments with UIActionSheet?

我弹出了一个操作表,我想将某个参数传递给按钮处理方法。

例如:

我有一个表,我想传递给在表中选择的按钮处理方法行号。

我怎样才能做到这一点?

您必须提前在您的委托中设置它。 然后,当您的代理收到按钮按下通知时,您可以使用此值。

如果要传递 integer,请使用 UIActionSheet.tag。 如果要传递 NSString,请使用 UIActionSheet.accessibilityValue。

这些简单易行。 无需创建实例变量。

如果是 integer 参数,则将其作为操作表的tag属性。 否则,您可以子类化操作表并将变量放在那里,或使用关联引用。

swift 1.2 代码:

在你的方法中:

let item1 = “item1”
let item2 = “item2”
let actionSheet = UIActionSheet(title: “Title ",
                                delegate: self, 
                                cancelButtonTitle: "Cancel", 
                                destructiveButtonTitle: “Here”,
                                otherButtonTitles: “There”)

     actionSheet.accessibilityElements = [item1, item2]

在那个 function

func actionSheet(actionSheet: UIActionSheet, clickedButtonAtIndex buttonIndex: Int){

let item1 = actionSheet[0]
let item2 = actionSheet[1]

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM