Instagram iPhone应用问题

Posted

技术标签:

【中文标题】Instagram iPhone应用问题【英文标题】:Instagram iPhone application questions 【发布时间】:2011-08-10 22:14:20 【问题描述】:

我正在开发一个类似 Instagram 的应用程序来学习 ios 编程。

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

我有几个问题:

当您打开 Instagram 并且未登录时,您不会看到带有五个按钮的标签栏。您会看到一个带有两个按钮的黑条,用于登录和注册。如果用户未登录,如何隐藏标签栏并显示类似的栏(可能是标准栏,对)?

根据您的意见,应用程序模型的作用是什么? (我应该使用模型还是您提示我只使用视图控制器?)作为“数据模型”,我首先想到的是图像数组。当用户单击“刷新帖子”按钮时,该数组将刷新。还有“热门图片”,所以我认为这是另一个与全局图片数组分开的数组。它应该插入模型中,对吗?我问这个是因为我想以一种好的方式组织我的模型/控制器/视图模式的应用程序。

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

【问题讨论】:

【参考方案1】:

    呈现没有动画的模态视图控制器,就像小影说的那样。模态视图控制器可以拥有自己的UITabBarController 实例,因此您可以在那里拥有一个标签栏,其中包含登录标签和注册标签或类似的标签。在真正的主视图控制器的后面,有你正常的五个或者你正在做的事情。这样,一旦用户登录,您就可以关闭模​​态视图控制器。简单

    我不完全理解您的问题。单击选项卡以使用速度/资源时,将图像加载到自己的线程上。我不明白一个模型是如何出现的。你能澄清一下吗?谢谢。

【讨论】:

感谢您的回答。关键是用户登录并且匿名用户必须看到相同的标签栏控制器(具有相同的视图控制器),除了底部的标签栏,应该只显示两个按钮“登录”和“注册”。也许我可以隐藏标签栏并呈现一个 UIToolbar。关于第二个问题,我问一个模型在这个应用程序中的作用是什么。我是一名 iOS 开发新手,我从来没有使用过模型,我所有的事情都是在视图控制器中完成的,但我知道这不是一种好的编程方式。 从用户的角度来看,它看起来就像同一个标签栏控制器,特别是如果您使用动画在两者之间淡入淡出。或者只需使用现有的标签栏控制器并在登录后添加新的标签栏项目,同时删除登录和注册项目。更难,但如果你愿意这样做,它会使用相同的标签栏控制器。我的方式,它不必看起来不同。用户会从他们的角度看到相同的内容。 听起来您对模型与视图感到困惑。当然,您将使用视图控制器,或者至少使用 UIViews 来显示信息等。iOS 编程的模型方面是一种将信息插入该视图的方法。它更像是一个概念,而不是有形的物品。您的模型可以存在于其自己的类文件(.h 和/或 .m)中,其中包含用于加载图像和对它们执行任何其他操作的方法调用。然后只需#import 您的类文件并从您的视图控制器调用方法。或者,只需在视图控制器中包含这些方法。这真的取决于你。查找 MVC。 谢谢老兄。你已经澄清了一些关于模型的概念。谢谢。 没问题。我的答案和 cmets 是否回答了您最初的问题?如果接受,请记住接受它。谢谢。【参考方案2】:

    当用户未登录时,您可以在启动时以模态方式呈现视图控制器(无动画)。然后您可以在登录成功完成后关闭模态视图控制器。

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

【讨论】:

感谢您的回答。我在@Dylan G 评论中附加了详细信息。

以上是关于Instagram iPhone应用问题的主要内容,如果未能解决你的问题,请参考以下文章

如何在导航控制器中创建无限循环,如 iphone 中的 instagram 应用程序?

iPhone:在 Instagram 上上传图片

像 Instagram iPhone 应用程序一样向右滑动时导航弹出视图。我如何实现这一点?

Instagram注销在iPhone中不起作用?

使用 iPhone Hooks 将照片中的图像/视频上传到 Instagram

其他应用打开 iPhone 的次数