2011-08-10 72 views
2

我正在开发像Instagram一样的应用程序来学习iOS编程。Instagram iPhone应用程序问题

我的应用程序是一个图像托管网站的客户端,用户可以从自己的iPhone分享图片。

我有几个问题:

  • 当你打开Instagram的和你看不到的TabBar有五个按钮,你没有登录。您会看到一个带有两个按钮的黑色栏,用于登录和注册。如果用户没有登录,我怎么能隐藏tabbar并显示这样的栏(可能是标准栏,右)?

  • 依靠您的意见,该应用程序模型的作用是什么? (我应该使用模型还是暗示我只使用视图控制器?)我首先想到的是“数据模型”,它是图像数组。当用户点击“刷新帖子”按钮时,该数组将会刷新。还有“流行影像”,所以我认为这是另一个与全局影像阵列分开的阵列。它应该插入模型中,对吗?我问这个是因为我会很好地组织我的模型/控制器/视图模式的应用程序。

如果你给我一些提示,我将不胜感激!

回答

1
  1. 当前没有动画模态视图控制器,像siuying说。模式视图控制器可以保存自己的实例UITabBarController,因此您可以在其中有一个标签栏,其中包含登录标签和注册标签或类似标签。在真实的主视图控制器后面,有你正常的五个或者你正在做的事情。这样,一旦用户登录,您可以关闭模​​式视图控制器。 Easy

  2. 我不完全理解你的问题。当点击标签以加速/资源使用时,将图像加载到它们自己的线程上。我不明白这是一个模型。你能澄清这一点吗?谢谢。

+0

谢谢你的回答。重点是用户登录,匿名用户必须看到相同的tabbarcontroller(具有相同的视图控制器),除了底部的tabbar,应该只显示两个按钮“登录”和“注册”。也许我可以隐藏tabbar并提供一个UIToolbar。关于第二个问题,我问在这个应用程序中模型的作用是什么。我是一名新手iOS开发人员,我从未使用过模型,我在视图控制器中完成了所有工作,但我知道这不是一种好的编程方式。 –

+0

从用户的角度来看,它看起来像是同一个标签栏控制器,特别是如果您使用动画在两者之间淡入淡出。或者,只要拿走现有的标签栏控制器,并在登录后添加新的标签栏项目,同时删除登录和注册项目。更难,但它会使用相同的标签栏控制器,如果这就是你一心想做的事情。我的方式,它不会看起来不同。用户会从他们的角度看到同一个人。 –

+1

听起来好像你对模型和视图感到困惑。当然,你将使用视图控制器,或者至少是UIViews来显示信息等。iOS编程的模型方面是将信息插入到视图中的一种方式。这是一个概念而不是有形的物品。你的模型可以存在于它自己的类文件(.h和/或.m)中,该文件包含方法调用来加载图像,以及为你做任何你需要的东西。然后,只需#import你的类文件并从视图控制器调用方法。或者,只需在视图控制器中包含这些方法。这真的取决于你。查看MVC。 –

1
  1. 可在模态呈现上发射,在没有登录用户的图控制器(无动画)。然后,可以关闭该模态视图控制器登录成功完成之后。

  2. 这里的模型通常不仅指数据(图像数组),还指应用程序的逻辑和行为。例如,从服务器下载图像应该在模型中实现。你可能想检查MVC Pattern

+0

谢谢你的回答。我在@Dylan G评论中添加了详细信息。 –