首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SWIFT - NSTimer,传递用户信息

SWIFT - NSTimer,传递用户信息
EN

Stack Overflow用户
提问于 2016-04-01 14:48:28
回答 1查看 635关注 0票数 0

我试图通过UIView()传递NSTimer.scheduledTimerWithTimeInterval()

这是一个代码:

代码语言:javascript
复制
 _ = NSTimer.scheduledTimerWithTimeInterval((Getsome("Adur") as! Double * 3.0), target: self, selector: "StartAnim", userInfo: ["vie" : bgview as UIView], repeats: true)


func StartAnim(timer: NSTimer)
{
    let userInfo = timer.userInfo as! Dictionary<String, UIView>
    GR(userInfo["vie"]!)
}

NSTimer操作发生在另一个内部函数中。

GR(vie: UIVIew)是私有化的

所有这些函数都位于独立的UIVIewController扩展文件中。

我得到的错误是:

由于未识别的异常“NSInvalidArgumentException”终止应用程序,原因:-App.VC StartAnim:发送到实例的未识别选择器

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-01 14:52:35

如果StartAdmin接受一个参数,则应该调用如下所示:

代码语言:javascript
复制
StartAdmin:

此外,如果使用SWIFT2.2,则应该使用新的#选择器方法:

代码语言:javascript
复制
#selector(self.StartAdmin(_:))

如果函数是私有的,则需要添加

代码语言:javascript
复制
@objc 

在声明之前,例如

代码语言:javascript
复制
@objc private func someFunc(parameter: AnyObject) { }
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36359352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档