【问题标题】:Objective-c stackflowObjective-c 堆栈溢出
【发布时间】:2009-11-17 10:41:40
【问题描述】:

我正在构建一个具有以下结构的小型应用程序:

AppDelegate:加载菜单控制器

菜单控制器: 控制在 xib 文件中创建的 4 个菜单项 具有以下结构的 xib 文件 - 看法 - 图像视图(背景) - 第二视图(MiddleView) - 导航栏 - 分段控制

TrackController: 正在被 MenuController 加载

我使用以下代码加载页面:

    TracksController *currentView = [[TracksController alloc] initWithNibName:@"TracksController" bundle:nil];

    [MiddleView addSubview:currentView.view];

    [currentView release];

我得到的错误信息是: 2009-11-17 11:25:17.336 Par23[1883:20b] *-[NSCFType playNow:]:无法识别的选择器发送到实例 0x48361e0 2009-11-17 11:25:17.337 Par23[1883:20b] * 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“***-[NSCFType playNow:]:无法识别的选择器发送到实例 0x48361e0 '

playNow 是 TracksController 中的 IBAction。

我认为我的问题是我的逻辑。并且视图中的视图不是您应该如何工作的方式。 这是因为它不是按钮 IBAction 中的问题。

我希望我解释得足够充分

【问题讨论】:

    标签: objective-c


    【解决方案1】:

    我要检查的第一件事是您没有犯您在帖子中犯的案例错误。 playNow: 不等于 PlayNow:

    我要检查的第二件事是 TracksController 或连接到 playNow: 的按钮是否附加了多个连接。您可以在 IB 中使用连接面板进行检查。

    如果这些都没有帮助,TracksController 是否会以编程方式触发 playNow?

    也许,由于您已经堆叠了视图,因此方法选择器被传递给了错误的视图控制器?

    【讨论】:

    • 我的问题是输入错误。它是 playNow,这是正确的。它也没有多个连接。我认为主要问题是我使用分段控件来做与 tabbarcontrol 相同的事情。我选择这个的原因是我需要空间。所以这可能会产生奇怪的东西
    猜你喜欢
    • 2012-12-20
    • 2011-03-02
    • 2014-01-17
    • 1970-01-01
    • 1970-01-01
    • 2019-05-18
    • 2014-12-28
    • 1970-01-01
    相关资源
    最近更新 更多