【问题标题】:UIRefreshControl addTarget action causing "unrecognized selector" errorUIRefreshControl addTarget 操作导致“无法识别的选择器”错误
【发布时间】:2014-09-13 14:34:36
【问题描述】:

我有一个UITableViewController,我在其中实现了一个UIRefreshControl 用于拉取刷新。一切正常,表格正在从我的网络服务中填充。但是当我下拉刷新时,我得到了错误:

[MyViewController refreshView]: unrecognized selector sent to instance ...

这是在抱怨 addTarget 操作:

UIRefreshControl * refresh = [[UIRefreshControl alloc] init];
[refresh addTarget:self action:@selector(refreshView) forControlEvents:UIControlEventValueChanged];

编辑器中该行的错误标志是Undeclared selector 'refreshView'

我的 refreshView 方法很简单:

- (void) refreshView: (UIRefreshControl *)refresh { 
    NSLog(@"test");
}

关于为什么这会导致应用程序崩溃的任何想法? (我运行的是 iOS 7.1)

【问题讨论】:

    标签: ios objective-c xcode uirefreshcontrol


    【解决方案1】:

    如果您将方法声明为“refreshView:”(即带有参数),则需要在“@selector”位中添加一个冒号。

    也就是说,一行换一个字符:

    [refresh addTarget:self action:@selector(refreshView:) forControlEvents:UIControlEventValueChanged];
    

    【讨论】:

    • 哈哈谢谢,解决了。一旦可以,我会接受。赞赏
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多