是否可以将图标和 /或“更多导航控制器”中的图标放在灰色和黑色以外的其他颜色?我尝试使用uitabbaritem的颜色更改为视图控制器设置的图标的颜色

- (id)initWithTitle:(NSString *)title image:(UIImage *)image tag:(NSInteger)tag

方法。

我的客户认为该界面太黑了,想要用一些彩色图标来使其变亮。

谢谢!

有帮助吗?

解决方案

nope :( tabar或工具栏上的按钮是用alpha通道绘制的,因此尽管.png具有,但它们没有颜色。

因此,您可以子类别栏栏或工具栏,并实现自己的按钮绘制整个条。

其他提示

来晚了一点,但是我更改更多控制器图标的方法是(并且不确定苹果是否会批准)执行以下操作:

id moreNavController = [tabs.moreNavigationController.viewControllers objectAtIndex:0];
if ([moreNavController respondsToSelector(@selector(view)]) {
    UITableView *t = (UITableView*)[moreNavController view];
    [t setDataSource:self];
}

然后,我只是实施了UITATION VIEWDATASOURCEPROTOCOL方法

-(NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section{
  id o =[tabs.moreNavigationController.viewControllers objectAtIndex:0];
  return [o tableView:tableView numberOfRowsInSection:section]; //let the existing data source actually return the number of rows
}

-(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath {
 /* configure cell as normal with what ever image in the imageView property*/ 
  cell.imageView.image = <someimageobj>
}

另一个想法是将另一个用作工具栏或选项卡栏的XIB文件。您可以使其看起来完全相同,甚至可以像工具栏或标签栏一样动画。然后,您可以将全局变量通过应用程序委托或通过Singleton传递,如有必要,可以与其他活动视图共享。

在此处找到的“隐藏抽屉”示例代码(只需更改屏幕尺寸,因为此版本将视图弹出位于顶部,而您希望它位于底部)。

http://cocoawithlove.com/2009/05/intercepting-status-bar-touches-on.html

如果您无法弄清楚,请告诉我,我在家中有工作代码,我可以在这里为您发布。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top