2013-02-03 66 views
0

我试图添加一些标签到单个视图,以便用户可以添加多个项目。视图中的自定义TabBar iOS

example http://s3.postimage.org/410d6mgqr/2013_02_03_11_14_16.png

正如你所看到的选项卡的内容不采取全视图,只是一点点,酒吧是在中间,它上面的东西不会改变,当标签的变化。内容对于5个视图是相同的。

我还没有能够找到一种方法来复制iOS上的这个,有什么想法吗?

在此先感谢!

+1

这可能不是最佳的用户体验设计决策,为什么你需要标签内的视图? – asdf

+0

为此使用UISegmentedControl ... – samfisher

+0

你是对的,我不需要标签。 UISegmentedControl是要走的路。谢谢 – Matthew

回答

1

有3种方式复制此:

1)使用一个UISegmentedControl。这会给你所需的功能,但是你可能无法使它看起来完全像你在图像中的样子。这是解决您的问题最简单,最简单的方法。

2)使用5个彼此相邻的自定义UIButton,管理按钮的状态,并根据它们的选择状态将图像分配给这些按钮。如果按下按钮1,则其背景图像将是“lightRedImage”,而其他所有按钮将是“darkRedImage”,依此类推。如果你不想使用太多的图像,这是一个更好的选择,但是有更多的代码来处理按钮状态。

3)为此,您需要全部5个选定状态的背景图像。创建一个5个按钮宽的图像视图。放置5个自定义按钮,在此imageView上使用clearColor作为背景。如果点击button1,button1的action方法会将imageView.image设置为“highlightButton1.png”。如果您不介意为5种不同的可能状态使用backgroundImage,并且代码更少,这样会更好,因为更新UI所需做的唯一一件事就是更改该imageView的背景。

注意:使用UITabBar和UISegmentedControl,配音功能免费。使用选项#2和#3,您可以添加UIAccessibility属性以反映选择状态等。因此,如果您对应用程序的辅助功能和VoiceOver功能感到困扰,则应牢记这一点。 (如果你不知道这些是什么,或者没有打扰,read this

+0

谢谢,我将使用UISegmentedControl并切换视图。 – Matthew