• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ios > (swift)ios自定义按钮报NSInvalidArgumentException异常

(swift)ios自定义按钮报NSInvalidArgumentException异常

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-05

佚名通过本文主要向大家介绍了invalid argument,err invalid argument,invalidargumenterror,invalid argument微信,invalidargument 0等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: (swift)ios自定义按钮报 NSInvalidArgumentException 异常
描述:

使用的 Xcode 是8.0的,不知有没什么不同

跟着官网的教程一步一步做下来,在自定义按钮这,始终报如下异常

[ios.RatingControl ratingButtonTapped:]: unrecognized selector sent to instance 0x7fb6d260def0
2016-10-04 14:55:45.377 ios[82888:4851192] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ios.RatingControl ratingButtonTapped:]: unrecognized selector sent to instance 0x7fb6d260def0'
*** First throw call stack:
(
    0   CoreFoundation                      0x000000010e1b534b __exceptionPreprocess + 171
    1   libobjc.A.dylib                     0x000000010b51621e objc_exception_throw + 48
    2   CoreFoundation                      0x000000010e224f34 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
    3   CoreFoundation                      0x000000010e13ac15 ___forwarding___ + 1013
    4   CoreFoundation                      0x000000010e13a798 _CF_forwarding_prep_0 + 120
    5   UIKit                               0x000000010b9e7b88 -[UIApplication sendAction:to:from:forEvent:] + 83
    6   UIKit                               0x000000010bb6d2b2 -[UIControl sendAction:to:forEvent:] + 67
    7   UIKit                               0x000000010bb6d5cb -[UIControl _sendActionsForEvents:withEvent:] + 444
    8   UIKit                               0x000000010bb6bf83 -[UIControl touchesBegan:withEvent:] + 414
    9   UIKit                               0x000000010ba54e15 -[UIWindow _sendTouchesForEvent:] + 2043
    10  UIKit                               0x000000010ba567c3 -[UIWindow sendEvent:] + 4011
    11  UIKit                               0x000000010ba03a33 -[UIApplication sendEvent:] + 371
    12  UIKit                               0x000000010c1f5b6d __dispatchPreprocessedEventFromEventQueue + 3248
    13  UIKit                               0x000000010c1ee817 __handleEventQueue + 4879
    14  CoreFoundation                      0x000000010e15a311 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
    15  CoreFoundation                      0x000000010e13f59c __CFRunLoopDoSources0 + 556
    16  CoreFoundation                      0x000000010e13ea86 __CFRunLoopRun + 918
    17  CoreFoundation                      0x000000010e13e494 CFRunLoopRunSpecific + 420
    18  GraphicsServices                    0x000000011005ea6f GSEventRunModal + 161
    19  UIKit                               0x000000010b9e5f34 UIApplicationMain + 159
    20  ios                                 0x000000010af32c0f main + 111
    21  libdyld.dylib                       0x000000010f0df68d start + 1
    22  ???                                 0x0000000000000001 0x0 + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException

这是自定义的视图类

class RatingControl: UIView {

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        
        let button = UIButton(frame: CGRect(x: 0, y: 0, width: 44, height: 44))
        button.backgroundColor = UIColor.red
        
        // 错误主要是这行,是addTarget这个方法参数错了吗,还是我 ratingButtonTapped 方法写错了,或者是哪里还有什么配置没配好
        button.addTarget(self, action:Selector("ratingButtonTapped:"), for: UIControlEvents.touchDown)
        
        addSubview(button)
    }
    
    // MARK: Button Action
    func ratingButtonTapped(button: UIButton) {
        print("Button pressed ?")
    }

}

我也看不懂这异常信息如何跟踪,不能直接点的吗 T T


解决方案1:

button.addTarget(self, action:#selector(ratingButtonTapped), for: UIControlEvents.touchDown)

把那句话换成这个试一下。应该是xcode8里面关于selector构造器语法的问题


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • (swift)ios自定义按钮报NSInvalidArgumentException异常

相关文章

  • 2017-06-05 IOSself-sizingtableViewcell情况下约束好一个控件后,如何再次改变它的约束?
  • 2017-06-05 各位大神,我写了一个socket服务端,想,启动App,就监听客户端,并与其连接,应该怎样做
  • 2017-06-05 微信链接怎样实现已装微信的用微信APP打开,没装的用网页打开
  • 2017-06-05 window.self关于self循环引用的一个疑问
  • 2017-06-05 iOS开发使用UIWebView加载HTML标签内嵌视频
  • 2017-06-05 如何获取iphone基带芯片工作时候获取到的一些参数呢,如信号强度,小区,周围小区以及一些更深入的参数,有人了解吗
  • 2017-06-05 更新了gem后怎么输入都是这个错误
  • 2017-06-05 apple-touch-startup-image不显示
  • 2017-06-05 在Mac系统里,让office保存后放到别的电脑时打开出现不兼容的问题,怎么解决???
  • 2017-06-05 求大神解决虚拟机vm120版本安装ox1011报错问题

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 二维数组OC二维数组替换元素的问题?
    • iOS在jsonModel中如何获取嵌套数组的数据?
    • 自动登录做法
    • UIDocumentInteractionController创建就crash有大侠么?
    • 并行Nav的跳转,从Nav1中控制器跳转到Nav2的控制器并且点击后退回到Nav2(表达可能不准确欢迎指正)
    • 诗经中关于爱情的诗c++中关于boolalpha用法问题
    • 乐视手机的自带浏览器内核竟然是ios的safariwebkit。。怎样用js识别出来它是个安卓机?
    • 关于xcode意外退出的问题
    • vue-cli开发项目webstrom会在stylus样式报错,飙红,请大神帮忙
    • AVPlayer播放网络声音很慢

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有