【问题标题】:TabBar / "More View Controller" - Possible to have icons in colors other than black?TabBar /“更多视图控制器” - 可能有黑色以外颜色的图标?
【发布时间】:2010-05-24 12:09:07
【问题描述】:

是否可以让 TabBar 和/或“更多导航控制器”中的图标采用灰色和黑色以外的颜色?我尝试使用 UITabBarItem 更改为视图控制器设置的图标的颜色

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

方法。

我的客户认为界面太暗,想用一些彩色图标来点亮它...

谢谢!

【问题讨论】:

    标签: iphone objective-c cocoa-touch uitabbaritem


    【解决方案1】:

    这有点晚了,但我更改更多控制器图标的方法是(不确定 Apple 是否会批准)执行以下操作:

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

    然后我只实现 UITableViewDatasourceProtocol 方法

    -(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>
    }
    

    【讨论】:

      【解决方案2】:

      不 :( 标签栏或工具栏上的按钮是使用 Alpha 通道绘制的,因此尽管 .png 有颜色,但它们没有颜色。

      因此,您可以继承 TabBar 或 ToolBar 并实现自己的按钮来绘制整个栏。

      【讨论】:

      • 这几乎是我所期望的。谢谢!
      【解决方案3】:

      另一个想法是让另一个 XIB 文件充当工具栏或选项卡栏。您可以让它看起来完全一样,甚至可以像工具栏或标签栏一样在视图中显示动画。然后,您可以通过 App Delegate 或 Singleton 传递全局变量,以便在必要时与其他活动视图共享。

      将子视图添加到视图中的一个很好的示例是此处的“隐藏抽屉”示例代码(只需更改屏幕尺寸,因为此版本将视图弹出在顶部,而您希望它在底部)。

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

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

      罗伯

      【讨论】:

        猜你喜欢
        • 2019-11-28
        • 1970-01-01
        • 1970-01-01
        • 2018-05-24
        • 2011-01-20
        • 2017-12-09
        • 1970-01-01
        • 1970-01-01
        • 2012-04-07
        相关资源
        最近更新 更多