设计此屏幕的最佳方式是什么(如Momento应用中的音符添加)?

时间:2012-07-09 07:54:06

标签: iphone uiview uiviewcontroller

我想创建一个类似于用户可以在Momento应用程序中添加注释的页面(下面的屏幕截图)。

enter image description here

为此页面构建视图控制器的最佳方法是什么?页面中央有一个类似标签的菜单。在屏幕的上半部分,是一个视图;在下半部分,你得到一个键盘(输入文字时)。

我的需要:输入一个可以有三种类型的文字(三个标签)和一张图片的便条 - >总共四个标签。

在一些分析,护目镜和思考中,我可以想到这些可能性:

选项1 一个带有4个标签的TabBarController(但是我无法将标签放在屏幕中间,就像Momento应用程序和我读过的(在一些Stackoverflow讨论中),Apple指南不建议更改标签栏它的自然位置。

选项2 有一个视图控制器,比如MyController。这将有4个按钮(在屏幕中间彼此相邻排列,因此它们看起来像标签)。 在页面的上半部分有一个UIView对象。 为页面的下半部分添加另一个UIView对象。

根据选择的四个按钮中的哪一个,我改变了顶部和底部显示的内容。底部UIView对象。

选项2对我来说听起来不错。但是,我想知道它是否正确,还是有更好的方法来实现这一目标?请问?

2 个答案:

答案 0 :(得分:2)

您应该使用UITextView并将其设为inputView作为带有这些按钮的视图。它应该根据您的需要随键盘自动滑动。

希望这有帮助。

干杯!

答案 1 :(得分:0)

好的,这是我要去的地方。两个问题; tabBar和处理键盘。其余的只是推动弹出适当的视图控制器。

TabBar:第一个Apple有一些示例代码处理键盘附件组件,这可能是Momento如何呈现他们的tabBarController之类的东西。这是link。他们的示例以“一次性”方式处理键盘,这个特定的应用程序是独一无二的。

键盘:至于处理键盘的更通用的方法,你可能想看看Michael Tyson在github上的TPKeyboardAvoiding组件。这是link的那个。 TPKeyboardAvoiding相当不错,因为它是一个用于处理UITableView和UIScrollView键盘问题的组件。

我还没有检查过的一件事是Mike的东西是否足够智能,以便在附加附件时处理键盘上的额外高度。 (虽然很聪明......)。

希望这有帮助。