Development Tip

iOS 7에서 탭 막대 색조 색상 변경

yourdevel 2020. 10. 17. 12:31
반응형

iOS 7에서 탭 막대 색조 색상 변경


iOS 7에서 탭 막대의 색조를 파란색 아이콘이있는 기본 흰색에서 다른 색상 버튼이있는 다른 색조로 변경하는 방법이 있습니까?


아래를 시도하십시오.

[[UITabBar appearance] setTintColor:[UIColor redColor]];
[[UITabBar appearance] setBarTintColor:[UIColor yellowColor]];

비활성 버튼에 색조를 지정하려면 VC에 아래 코드를 입력하십시오 viewDidLoad.

UITabBarItem *tabBarItem = [yourTabBarController.tabBar.items objectAtIndex:0];

UIImage *unselectedImage = [UIImage imageNamed:@"icon-unselected"];
UIImage *selectedImage = [UIImage imageNamed:@"icon-selected"];

[tabBarItem setImage: [unselectedImage imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];
[tabBarItem setSelectedImage: selectedImage];

모든 tabBarItems에 대해이 작업을 수행해야합니다. 예,보기 흉하다는 것을 알고 있으며이를 수행하는 더 깨끗한 방법 있기를 바랍니다 .

빠른:

UITabBar.appearance().tintColor = UIColor.red

tabBarItem.image = UIImage(named: "unselected")?.withRenderingMode(.alwaysOriginal)
tabBarItem.selectedImage = UIImage(named: "selected")?.withRenderingMode(.alwaysOriginal)

이를 수행하는 훨씬 더 쉬운 방법이 있습니다.

파일 검사기를 열고 "전역 색조"를 선택하십시오.

Interface Builder에서 앱의 색조 색상을 설정할 수도 있습니다. 파일 속성의 인터페이스 빌더 문서 섹션에있는 전역 색조 메뉴를 사용하면 색상 윈도우를 열거 나 특정 색상을 선택할 수 있습니다.

참조 :

https://developer.apple.com/library/ios/documentation/userexperience/conceptual/TransitionGuide/AppearanceCustomization.html


iOS 7.1.1

누군가가 전체적으로 설정하는 색조 색상을 사용해야하는 경우 :

[[UIView appearance] setTintColor:[UIColor whiteColor]];

에서 didFinishLaunchingWithOptionsAppDelegate.

또한 아래 코드는 모든 viewDidLoad방법 에서 탭 막대 색조 색상 만 변경합니다 .

[self.tabBarController.tabBar setTintColor:[UIColor redColor]];

앱 대리자 didFinishLaunchingWithOptions :

window.tintColor = [UIColor purpleColor];

앱의 색조 색상을 전체적으로 설정합니다.


Tab Bar의 View Controller 클래스에 다음을 작성하십시오.

// Generate a black tab bar
self.tabBarController.tabBar.barTintColor = [UIColor blackColor];

// Set the selected icons and text tint color
self.tabBarController.tabBar.tintColor = [UIColor orangeColor];

마침내 나를 위해 일한 것은 다음과 같습니다.

[self.tabBar setTintColor:[UIColor redColor]];
[self.tabBar setBarTintColor:[UIColor yellowColor]];

Interface Builder탭 바 컨트롤러" Attributes Inspector "에서 하단 바가 불투명 한 탭 바로 설정되어 있는지 확인하십시오.

Choose Opaque

이제 AppDelegate.m 파일로 이동하십시오. 찾기:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

And then add this code between the curly braces to change the colors of both the tab bar buttons and the tab bar background:

///----------------SET TAB BAR COLOR------------------------//

//--------------FOR TAB BAR BUTTON COLOR---------------//
[[UITabBar appearance] setTintColor:[UIColor greenColor]];

//-------------FOR TAB BAR BACKGROUND COLOR------------//
[[UITabBar appearance] setBarTintColor:[UIColor whiteColor]];

After trying out all the suggested solutions, I couldn't find any very helpful.

I finally tried the following:

[self.tabBar setTintColor:[UIColor orangeColor]];

which worked out perfectly.

I only provided one image for every TabBarItem. Didn't even need a selectedImage.

I even used it inside the Child-ViewControllers to set different TintColors:

UIColor *theColorYouWish = ...;
if ([[self.parentViewController class] isSubclassOfClass:[UITabBarController class]]){
    UITabBarController *tbc = (UITabBarController *) self.parentViewController;
    [tbc.tabBar setTintColor:theColorYouWish];
}

You can set your tint color and font as setTitleTextattribute:

UIFont *font= (kUIScreenHeight>KipadHeight)?[UIFont boldSystemFontOfSize:32.0f]:[UIFont boldSystemFontOfSize:16.0f];
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:font, NSFontAttributeName,
                            tintColorLight, NSForegroundColorAttributeName, nil];
[[UINavigationBar appearance] setTitleTextAttributes:attributes];

참고URL : https://stackoverflow.com/questions/18795117/change-tab-bar-tint-color-on-ios-7

반응형