需要架构方向

发布于 2024-11-09 12:36:54 字数 534 浏览 1 评论 0原文

我正在创建一个应用程序,需要一些设计帮助。

启动屏幕 - 我想显示 6-8 个“类别”按钮,其中带有从数组加载的标签(界面生成器中的“普通”按钮 - 不是选项卡栏按钮或菜单栏按钮)。 表格屏幕 - 当在启动屏幕上按下某个类别按钮时,我想显示一个表格视图,其中包含该类别中的所有项目。 详细信息屏幕 - 选择表屏幕上的其中一项后,将转至包含该项目详细信息的新屏幕。该屏幕上将有一个操作按钮,如果按下该按钮将从列表中删除该项目。

我的问题如下:

1)我不想在第一个屏幕上显示导航按钮。我仍然可以使用基于导航的应用程序并隐藏第一个屏幕上的导航控件,还是创建基于视图的应用程序并将导航控制器放在其中一个视图“内部”会更好(更容易)?我完全愿意接受您可能提出的任何基本设计方法建议。

2)我已经弄清楚如何创建一个sqlite3文件,将其添加到项目中,查询它,并从结果生成表视图,但我不确定如何以一种方式存储sqlite文件当用户稍后升级应用程序时,会保留在设备上。有什么指示吗?

感谢您可以向我指出的任何帮助/链接/文档。我看过一百万个教程,但没有一个真正涉及基本的应用程序设计。

I'm creating an app and I need some help with design.

Launch Screen - I want to show 6-8 "category" buttons with labels loaded from an array ("normal" buttons from interface builder - not tab bar buttons or menu bar buttons).
Table Screen - When one of the category buttons is pushed on the launch screen, I want to show a table view with all of the items in that category.
Detail Screen - When one of the items on the table screen is selected, go to a new screen with details for the item. There will be an action button on this screen which will remove the item from the list if pressed.

My questions are as follows:

1) I don't want to show navigation buttons on the first screen. Can I still use a Navigation-Based application and hide the navigation controls on the first screen, or would it be better (easier) to create a view-based application and put a navigation controller "inside" one of the views? I'm totally open to any basic design approach suggestions you may have.

2) I've figured out how to create a sqlite3 file, add it to the project, query it, and generate the table view from the results, but I'm not sure about how to store the sqlite file in a way that will persist on the device when the user upgrades the app later. Any pointers on that?

Thanks for any help/links/documentation you can point me to. I've watched a million tutorials but none of the ones I've seen really address basic app design.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浮生面具三千个 2024-11-16 12:36:54

现在对于 Q1,两种方法都可以正常工作,但如果您在第一个屏幕上有按钮,那么如果您计划在第一个屏幕之后的屏幕上有后退按钮,那么拥有 uinavigationcontroller 可能会稍微容易一些。

对于第二个问题,要使数据库在用户在某个阶段更新应用程序时持续存在,只需保留原始数据库并包含一个具有附加内容的新数据库(具有不同的名称),然后修改原始数据库并将任何附加内容导入其中。

您也可以做一些变体,即将内容从旧数据库导入到新数据库等。但关键是保持数据库文件名不同,即添加database_v1.sqlite、database_v2.sqlite等。

顺便说一句,不要忘记清理您将来不会使用的任何数据库。

Now for Q1, both ways work fine but if you have buttons from the first screen, having a uinavigationcontroller might make it slightly easier if you plan to have back buttons on the screens after the first screen.

For Q2, to make the database persist when the user updates their app at some stage, simply keep the original database and include a new database (with a different name) with additional content, then modify your original database and import any additional content to it.

You can also do variations of that also, ie import content from old database to new database and etc. But the key is to keep the database file names different, ie add database_v1.sqlite, database_v2.sqlite and etc.

BTW don't forget to clean up any databases you won't use in future.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文