Ios 在Xcode中查找未知按钮的简单方法?

Ios 在Xcode中查找未知按钮的简单方法?,ios,objective-c,xcode,Ios,Objective C,Xcode,我目前正在尝试学习Xcode,而不是阅读冗长的教程,我更喜欢边做边学。因此,我正在查看苹果开发者网站上的一些示例代码,并学习代码的来龙去脉。我目前正在学习核心数据,但遇到了一个问题。有一个按钮将我链接到类别,我可以在其中选择一个类别来放入食谱。我能说的最好的情况是,这些类别连接到SQLite数据库。但是,我试图删除此按钮,但我无法找到按钮在任何代码中的位置。如果有人知道通过模拟器定位和删除按钮的简单方法,我会非常感激,或者如果有人有时间查看代码,看看按钮在哪里,就在准备时间的正下方,就在配料的正

我目前正在尝试学习Xcode,而不是阅读冗长的教程,我更喜欢边做边学。因此,我正在查看苹果开发者网站上的一些示例代码,并学习代码的来龙去脉。我目前正在学习核心数据,但遇到了一个问题。有一个按钮将我链接到类别,我可以在其中选择一个类别来放入食谱。我能说的最好的情况是,这些类别连接到SQLite数据库。但是,我试图删除此按钮,但我无法找到按钮在任何代码中的位置。如果有人知道通过模拟器定位和删除按钮的简单方法,我会非常感激,或者如果有人有时间查看代码,看看按钮在哪里,就在准备时间的正下方,就在配料的正上方,看看如何删除,我会非常感激。非常感谢您的帮助。谢谢。

该接口可能位于xib文件中。但如果你以这种方式学习,你将不得不接受,你将遇到一些更正式的方法可能会帮助你的东西。

来自苹果:

重要提示:核心数据不是入门级技术。出发前 要使用核心数据,您必须了解iOS应用程序的基础知识 发展,包括:

如何使用Xcode和Interface Builder 基本设计模式,如模型-视图-控制器和委托 如何使用视图控制器、导航控制器和表视图 您链接到的示例代码有一些非常有用的信息,可以帮助您学习核心数据,但是您应该首先真正了解Xcode等的诀窍。此外,该项目不使用故事板,似乎针对iOS 3.2。如果您刚刚开始,您可能希望查看一些针对更新版本的iOS并集成故事板的示例代码。如果你死心塌地地从核心数据开始,那就从分离主细节应用程序模板开始,这样更容易使用双关语

如果您必须知道,类别按钮实际上是一个UITableViewCell。它驻留在RecipeDetailViewController.m中,并在调用tableView:DidSelectRowatingIndexPath:时触发到TypeSelectionViewController的推式转换

如果您想删除该单元和该部分的标题,请注释掉第249行和第228-230行

第249行:

//    case TYPE_SECTION:
第228-230行:

//    case TYPE_SECTION:
//        title = @"Category";
//        break; 

现在停下来,别走。稍后谢谢。

如果您在项目中搜索单词Category,您可以看到它是RecipedTailViewController内tableview中的一个部分:

这个应用程序范围的搜索功能是非常有用的,它只扫描代码,不扫描笔尖或故事板

这告诉我们,这不是NIB定义的UI的一部分,而是从代码生成的UI,它是表视图中的一个部分。从代码中可以看到,这意味着节号等于TYPE_section的节会导致类别行为。因此,在代码中搜索所有出现的类型_部分,并从代码中注释它。因为这些节号是代码的整数,必须从零开始,所以必须调整常数,即:

#define TYPE_SECTION 0
#define INGREDIENTS_SECTION 1
#define INSTRUCTIONS_SECTION 2
将其替换为以下内容:

// #define TYPE_SECTION 0
#define INGREDIENTS_SECTION 0
#define INSTRUCTIONS_SECTION 1
这段代码相当优雅,对节数也进行了硬编码,因此您可能也必须解决这一问题,即替换:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 4;
}

在我的快速调查中,这是你需要做的。你可能还需要做其他事情。如果这是一个由NIB或故事板定义的UI元素,那么查找它的过程会有点不同,而且会非常麻烦,因此我在这里不太愿意讨论它。。。该问题的答案a不适用于您当前的问题,即如何删除类别部分,b关于搜索NIB的详细答案可能会更令人困惑,而不是有用;如果你真的想让我描述它,我可以,但这可能不是一个很好的利用你的时间,因为你才刚刚开始

说到这里,如果您想学习,诊断真正的旧代码可能不是我建议的第一条途径

相反,我建议您遵循一些教程,指导您创建自己的测试应用程序,例如《今日开始开发iOS应用程序指南》一节中介绍的Apple的“我的第一个应用程序”;或者他们在该指南结尾部分描述的第二个或第三个应用程序


实际上,按照这样的教程编写自己的简化代码要比尝试对一些旧代码进行逆向工程更有效率

在实践中学习是一种完全可以接受的方法。你仍然会把一切都弄清楚,而且你更擅长克服那些坎坷。哦,我知道,我从来没有说过它有什么问题。只是在实践中学习经常会遇到这样的情况,所以你必须
e准备好了。您是Objective-C的新手,您是从核心数据开始的吗?核心数据更多的是一种中级数据。你需要每天学习一步。如果你很懒,那就看林达的视频教程。从核心数据这样的东西开始,不阅读,只看视频是不可能的!!我推荐斯坦福CS193p课程让你开始学习。它是免费的,你可以在iTunes U上找到。我真的很感谢你花时间下载代码。非常感谢您的回复。我希望我能将此标记为解决方案的匹配。@user2738358无需担心。我很高兴你发现两者都很有帮助!我真的很感谢你花时间下载代码。非常感谢您的回复。不客气!罗布的回答也很好。向上投票?另外,我强烈推荐Lynda.com开始iOS开发。物有所值。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 3;
}