【发布时间】:2011-09-09 13:33:55
【问题描述】:
好的,我知道这是一个模糊的概念性问题,但我真的需要帮助。如果您决定花时间阅读本文,请提前致谢。我什至不会考虑写这么多,除非这是一个很棒的论坛,有这么多乐于助人的人,我认为这是最好的地方。
这都与这里的问题有关(你不必看 - 我在下面解释一切):Pass parameter when initializing table
我已经为同一个问题工作了好几天,但我意识到我一定缺少一些重要的东西。几天前,我用谷歌搜索和搜索,我什至买了(大约 50% 的人阅读了)两本 Obj-C 书籍,但我仍然在掌握一些看起来应该非常容易的东西。我显然对 OOP 很陌生,但我在 HTML、perl、sql、python 以及一些古老的东西(如 pascal 和 basic)方面的技能平庸。我是一个 n00b,但不是白痴(嗯,实际上这种经历让我改变了一些想法)。
无论如何,我的最终目标是在第一个视图(第 1 级)上创建一个带有 8 个“普通”按钮的应用程序,每个按钮基本上都做同样的事情 - 即显示一个简单的表格视图(第 2 级)单元格中的数据可以单击以继续深入了解详细信息(第 3 级)。非常基本和直接的概念。 8 个可能的 2 级之间的唯一区别是将显示的数据。我已经为每个按钮构建了可以按我想要的方式工作的 sql 查询。
所以,这就是我的立场:我有一个完美运行的应用程序,从 2 级开始,一切都完全符合我的预期 - 查询有效,表格很漂亮 - 这太棒了。
另外,我还有另一个基于导航的应用程序,它在“1 级”启动并显示 8 个按钮(我在 1 级隐藏了导航栏)。如果我单击 1 级上的任何按钮,则 2 级视图(即导航栏 + 表格)会完全按照我的意愿滑入视图。问题是表格只是空白。无论我做什么,我都无法在第二个应用程序中获得 2 级来向我显示数据,即使我可以在第一个应用程序中完美地显示所有这些数据。对于我的生活,我无法弄清楚如何将 1 级与 2 级“链接”。
希望您能理解我试图弥合的这个差距。由于 2 级有 8 种可能性(同一个 sql 表上的 sql 查询只有非常细微的差异),我最初尝试想出一种将整数“传递”到 2 级视图的方法(在第一个应用程序中)和然后根据传递的内容选择 sql 查询(有关该惨败,请参见上面的链接)。一旦我开始工作,我计划稍后弄清楚如何让按钮进行“传递”。然而,在搞砸了大约 16 个小时之后,我放弃了,决定制作 8 个不同的表视图控制器,除了查询之外,所有的代码几乎相同。那样的话,如果我可以在 1 级上获得一个 SINGLE 按钮来简单地按下没有参数的 2 级中的一个,那我将是一个糟糕但成功的程序员。
不幸的是,即使这样对我来说也没有奏效。我已经尝试了在 Interface Builder 中我能想到的所有可能的控制拖动和窗口/视图/表格组合,但无论我尝试什么,数据都不会加载到表格视图中,即使它在我的第一个应用程序中效果很好。我已经浏览了每一行代码 - 它们是相同的,除了必须“调用”或“启动”第 2 级部分,而我就是不明白。
因此,我将在这里打破惯例/期望,并且不在我的问题中发布任何代码。我只想知道——这怎么可能这么难??我具有很强的分析能力,而且我很快就赶上了,但我不得不说,我一生中从未因技术挑战而如此自卑。
谁能从概念上向我解释我需要在这里做什么或我缺少什么?即使你给我一个链接到要阅读的东西,我也会非常感激。我已经在 youtube 上观看了数十小时的教程,但我一直都在等待更多。
我当然愿意分享我的代码,但是代码太多了,而且我对此很陌生,我真的不知道相关部分在哪里。另外,我实际上想了解所有这些是如何工作的,以便我可以帮助他人。如果这里有 PM 这样的东西,如果你愿意看一下,我会通过电子邮件发送给你。一旦我得到它的工作,我会在这里发布代码。我必须相信还有其他人在寻找与我相同的东西。但是,更重要的是,我只想从高层次上知道,解决我的问题的正确方法是什么?如果您查看我的链接,您会看到我一直在尝试什么(将整数传递给填充表格的方法),但正如我所说,我基本上放弃了,因为我没有得到任何结果。人们试图帮助我,但我是个白痴。
感谢您接受我冗长的信息。如果你做到了这一步并对我有一些建议,我会全力以赴。不过,我会说实话 - 如果你告诉我我应该放弃整个事情并使用核心数据,我会哭的。我真的认为我没有时间想出一种完全不同的数据管理方式。正如我所说,我对我的应用程序的数据库和查询部分感到非常满意 - 它只是管理令人讨厌的视图并在它们之间传递数据,这让我很生气!
感谢任何帮助 - 非常感谢。
【问题讨论】:
-
为什么投反对票?这个问题是完全合法的,而不仅仅是另一个家庭作业问题。
-
@truthsmiles - 我很乐意向您解释这一点,请随时在 Google 聊天中联系我。 (moshberm)与此同时,我将尝试写一个答案。
-
@Moshe,如果可以的话,-1,告诉某人私下讨论违背了整个 SO 模型,因为它永远不会帮助其他任何人。
-
@truth,我并没有对你投反对票,但是当你将网站称为“论坛”时,这里的一些人可能会......很棘手......那是因为 SO 开始解决论坛存在的许多问题。
-
@LordTorgamus - 大人,如果我的回答让您满意,您可以投票。 ;-)
标签: iphone uiviewcontroller uitableview parameter-passing