更改iphone中自定义选项卡栏的颜色
我在应用程序中动态添加了一个选项卡栏,如下所示:-更改iphone中自定义选项卡栏的颜色,iphone,Iphone,我在应用程序中动态添加了一个选项卡栏,如下所示:- if (isLogin == TRUE) { rootController = [[SettingsViewController alloc] init]; tabTitle = @"Settings"; navTitle = @"Settings"; tabImage = [UIImage imageNamed:@"icon1.png"]; } else {
if (isLogin == TRUE) {
rootController = [[SettingsViewController alloc] init];
tabTitle = @"Settings";
navTitle = @"Settings";
tabImage = [UIImage imageNamed:@"icon1.png"];
}
else
{
root =TRUE;
rootController = [[RootViewController alloc] init];
tabTitle = @"Home";
navTitle = @"Login";
tabImage = [UIImage imageNamed:@"icon1.png"];
}
break;
case 1:
rootController = [[AboutUs alloc] init];
tabTitle = @"AboutUs";
navTitle = @"AboutUs";
tabImage = [UIImage imageNamed:@"icon2.png"];
break;
case 2:
rootController = [[ContactUsViewController alloc] init];
tabTitle = @"Contact Us";
navTitle = @"Contact Us";
tabImage = [UIImage imageNamed:@"icon3.png"];
break;
case 3:
rootController = [[MoreViewController alloc] init];
tabTitle = @"More";
navTitle = @"More";
tabImage = [UIImage imageNamed:@"icon4.png"];
break;
rootController.view.hidden = FALSE;
UINavigationController *subController = [[UINavigationController alloc]
initWithRootViewController:rootController];
subController.navigationBar.tintColor = [UIColor colorWithRed:(110.0/255.0) green:(184.0/255.0) blue:(71.0/255.0) alpha:1.0];
subController.navigationBar.topItem.title = navTitle;
subController.title = tabTitle;
subController.navigationItem.hidesBackButton =YES;
subController.tabBarItem.image = tabImage;
NSLog(@"%@",subController);
[controllers addObject:subController];
NSLog(@"%@",controllers);
[subController release];
[rootController release];
因此,它将显示选项卡,如下表所示:-
但我想将选项卡栏的默认检测颜色(蓝色)剪切为橙色,并希望选项卡栏的外观如下所示:-
请帮帮我;如何执行此操作?您不能更改选项卡栏的默认颜色。这是我们在iOS应用程序中必须遵循的用户界面准则之一
当无法更改选项卡栏的默认颜色时,我对这个问题进行了评论。现在,我们可以更改选项卡栏的默认颜色。您可以更改选项卡栏的颜色以及苹果公司批准的许多应用程序。您可以将uitabar子类化,并根据需要更改颜色。在您的情况下,需要将uitabaritem子类化。这是一个stackoverflow帖子,看看吧如果不允许定制标签栏,那么苹果会用自己的游戏中心应用程序打破自己的指导原则(顺便说一句,这款应用程序的设计看起来很不错) 在AppDelegete.m中
您也可以尝试更改选项卡栏图标图像,而不是更改颜色 喜欢 在tabbar控制器委托方法中
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController
{
if([tabBarController selectedIndex] == 0)
{
[viewController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"selected.png"]withFinishedUnselectedImage:[UIImage imageNamed:@"unselect.png"]];
}
}
通过此操作,您可以更改tabbaritem图像
或者您可以直接在视图控制器init(或viewwillappease)方法中使用,如
[viewController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"selected.png"]withFinishedUnselectedImage:[UIImage imageNamed:@"unselect.png"]];
可以更改选项卡栏按钮的颜色。请看我的答案。@Rahul感谢您分享此信息。但仍有可能,该应用程序可能会被苹果拒绝?你可以在应用商店中看到许多应用程序在UITabBar上具有自定义颜色。你可以更改选项卡栏上的所有颜色或文本颜色。要更改颜色,请参阅下面我的帖子。谢谢回复。我已经添加了上述内容(我的代码)在我的appdelegate方法中,因为我希望此选项卡栏在我的整个应用程序中工作,并且我已检查了您的回复,但它不工作。请您详细说明如何操作。或者您可以告诉我其他方法。请帮助me@shweta仔细阅读这篇文章,你应该接受拉胡尔·维亚斯的回答
[viewController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"selected.png"]withFinishedUnselectedImage:[UIImage imageNamed:@"unselect.png"]];