【发布时间】:2014-01-30 11:34:46
【问题描述】:
我在一个项目中,我需要创建自定义 UINavigationBar 和 UITabBar。
我的问题在于物品的颜色(色调!)。
我不希望我的物品有任何色调。我试图把它变成清晰的颜色,但这只会让它消失(它变得透明)。
所以,概括地说,我有我自己的酒吧物品图像,它们每个都包含自己特定的颜色。我已经读过,为了做我想做的事,我必须继承我的UIBars,但我没有比这更多的信息。我应该在我的子类中修改什么以摆脱该色调颜色约束?谢谢。
编辑: 色调颜色不应用于项目,但应用于栏(所以所有项目)。所以我的问题是我想要我的物品有特定的颜色
编辑 2:
好吧,我想我明白了!解决方法是使用UIBarButtonItem方法:initWithCustomView:
UIButton *backBtn = [UIButton buttonWithType:UIButtonTypeCustom];
backBtn.bounds = CGRectMake( 0, 0, 26, 26);
[backBtn setImage:[UIImage imageNamed:@"BackBtn.png"] forState:UIControlStateNormal];
[backBtn addTarget:self.navigationController action:@selector(popViewControllerAnimated:) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithCustomView:backBtn];
self.navigationItem.leftBarButtonItem = item;
但这仅适用于UINavigationBar,因为它需要UIBarButtonItem。另一方面,UITabBar 只接受不符合initWithCustomView 的UITabBarItem。所以我还在那里泡菜……
【问题讨论】:
-
我不明白,去掉颜色不就等于透明吗?你可以试试whiteColor吗?
-
不透明意味着色调颜色将是透明的,因此形成图像的内容(线条)将变得透明。换句话说,图像将变得透明(因此即使图像存在,也不会出现任何内容)
标签: ios uinavigationbar customization uitabbar tintcolor