【问题标题】:Adding TabBar item icons by code, not interface builder?通过代码而不是界面生成器添加 TabBar 项图标?
【发布时间】:2012-02-09 04:11:29
【问题描述】:

我正在使用 Dapp 应用程序制作应用程序,但我无法正确添加标签栏图标。那么,有没有办法将图标添加到标签栏编码呢?就像 AppDelegate 上的东西一样,不使用 Interface Builder。谢谢!

【问题讨论】:

    标签: ios icons tabbar


    【解决方案1】:

    UITabBarController 通过检查视图控制器本身,导出为每个视图控制器创建选项卡栏项所需的所有信息。

    您需要做的就是使用-setViewControllers:animated: 分配一组视图控制器。

    一旦视图控制器被添加到标签栏控制器,标签栏控制器将检查视图控制器的tabBarItem 属性。此选项卡栏项目将自动插入选项卡栏控制器的选项卡栏。 您可以通过编程方式在每个视图控制器中初始化选项卡栏。它看起来像这样......

    UITabBarItem *tabBarItem = [[UITabBarItem alloc] initWithTitle:@"Title" image:[UIImage imageNamed:@"someImage"] tag:1];
    

    或者如果您想使用其中一个系统项...

    UITabBarItem *tabBarItem = [[UITabBarItem alloc] initWithSystemItem:UITabBarSystemItemFeatured tag:1];
    

    我建议您查看UITabBarControllerUITabBarItemUIViewController 类引用并阅读相关属性。文档中充满了不可或缺的信息。

    【讨论】:

    • 我喜欢这个解决方案,但是一旦附加了系统项目,我似乎无法设置标签栏项目的自定义标题。 叹息
    【解决方案2】:

    是的,因此,如果您的资源中有 30x30 .png 文件,则只需添加如下代码即可。您可以将它放在与标签栏索引关联的视图控制器的 init 方法中。

    //get the tab bar item
                UITabBarItem *tbi = [self tabBarItem];
    
                //Give it a label
                [tbi setTitle:@"Item One"];
    
                //create a UIImage from a file
                UIImage *i = [UIImage imageNamed:@"MyItem.png"];
    
                //put that image on the tab bar item
                [tbi setImage:i];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-31
      • 2017-08-24
      相关资源
      最近更新 更多