UITabBarController 的编程创建和配置 - 为选项卡设置系统图像

Posted

技术标签:

【中文标题】UITabBarController 的编程创建和配置 - 为选项卡设置系统图像【英文标题】:Programatic Creation and Config of UITabBarController - Setting a system Image for a tab 【发布时间】:2011-01-14 16:14:15 【问题描述】:

以编程方式在应用程序中创建 tabBar 相当简单:

self.tabBarController = [[UITabBarController alloc] init]; 
[self.view addSubview:_tabBarController.view];

UIViewController * tab1 = [[UIViewController alloc] init];
tab1.title = "A";

UIViewController * tab2 = [[UIViewController alloc] init];
tab2.title = "B";

_tabBarController.viewControllers = [NSArray arrayWithObjects:patientSearch,todoList,nil];

[tab1 release];
[tab2 release];

您还可以轻松地将图像放入选项卡中:

tab1.tabBarItem.image = [UIImage imageNamed:@"myIcon.png"];

但是如何将这些选项卡的图像设置为系统图像之一?(例如搜索、收藏夹、书签等)在 IB 中,这是通过更改“标识符”来设置的,但是如何设置你能以编程方式做到这一点

【问题讨论】:

【参考方案1】:
 UITabBarItem *aTabBarItem = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:0];

UITabBarItem docs

UITabBarSystemItem 可以在标签栏上使用的系统项。

typedef enum 
   UITabBarSystemItemMore,
   UITabBarSystemItemFavorites,
   UITabBarSystemItemFeatured,
   UITabBarSystemItemTopRated,
   UITabBarSystemItemRecents,
   UITabBarSystemItemContacts,
   UITabBarSystemItemHistory,
   UITabBarSystemItemBookmarks,
   UITabBarSystemItemSearch,
   UITabBarSystemItemDownloads,
   UITabBarSystemItemMostRecent,
   UITabBarSystemItemMostViewed,
 UITabBarSystemItem;

设置patientSearch.tabBarItem = aTabBarItem;

【讨论】:

tag的用例是什么?

以上是关于UITabBarController 的编程创建和配置 - 为选项卡设置系统图像的主要内容,如果未能解决你的问题,请参考以下文章

使用 UITabBarController 和 UINavigationController 的最佳方式

UITabBarController 应用程序和 pushViewController 失败

以编程方式制作 UITabBarController 和 UINavigationController Swift 4

以编程方式在 UITabBarController 和 UINavigationController 中呈现视图

将 UIViewController 推送到 UINavigationController(也在 UITabBarController 中)

从 UITabBarController 中的另一个选项卡以编程方式在 UIPageViewController 中翻页