带有按钮作为标题的UINavigationBar。

10
我已经进行了一些调查,但似乎没有找到有用的东西。
我正在尝试做的事情很基本,但我不确定是否存在:
1. 更简单的方法
2. 或者苹果公司会否禁止
我有一个通过UINavigationController控制的视图(显然从此帖子的标题中可以看出),其中包含一个对象/视图。
视图已经相当拥挤了。并不是真的拥挤,而是没有足够的空间使事物舒适地适合其中。
用户需要能够使用不同数量的星星(1-5)对此对象进行评级。
我认为最理想的方式是在UINavigationBar标题位置(居中)设置5个星形按钮(当然带有图像)。
所以看起来应该像这样:
___________________________________
|                                 |
| Back      * * * * *     Action  |
|_________________________________|
|                                 |
|         view down here          |
|                                 |

非常感谢您提供任何意见,一如既往地感谢您的时间!

3个回答

22

您可以创建带有5星评级功能的自定义小部件,并将其添加到navigationItem中。

self.navigationItem.titleView = customWidget;

1
在我脑海中,我的建议是尝试使用 UIToolbar 并将其设置到顶部,并使其看起来像一个 navigationBar。实现它并添加 UIButtons 和动作非常容易。

你认为可能创建一个视图,将工具栏添加到其中并设置UInavigationController标题为该视图。 - random
你可以创建一个视图,不使用 UINavigationBar(也不需要使用 navigationController.title 方法),而是使用大小为 (0,0,320,44) 的 UIToolbar,并将 UIButtons 添加为其子视图。 - Legolas

1
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button addTarget:self
           action:@selector(chooseDataCenter:)
 forControlEvents:UIControlEventTouchUpInside];
[button setTitle:@"点我选择数据中心>" forState:UIControlStateNormal];
button.frame = CGRectMake(0, 0, 160.0, 40.0);

self.navigationItem.titleView =button;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接