2014-02-07 2 views
1

큰 IOS 응용 프로그램에는 많은 세그먼트 컨트롤이 있습니다. 새 IOS 7 B & W 모양 - 우리의 응용 프로그램에서 쓰레기처럼 보입니다. 배경색을 변경하고 (모서리 반경을 설정하여) 색이 지정된 버튼을 다시 표시 할 수 있지만 IOS 6 휴대 전화에서 실행될 때 쓰레기처럼 보입니다. IOS 6의 경우 색조 색을 변경하고 배경색을 변경하지 않아야합니다.IOS 6 및 7의 세그먼트 제어 모양 변경

각 컨트롤에 대해이를 수행하기위한 조건부 코드를 추가하는 것은 고통스러운 일입니다. 이 작업을 수행하는 하위 클래스를 생성하고이를 사용하도록 모든 XIB를 수정하면 고통이 될 수 있습니다.

전체 앱의 컨트롤 모양을 수정할 수있는 방법이 있습니까? 클래스 확장이 이것을 할 수 있습니까?

답변

0

당신은

뭔가

[[UISegmentedControl appearance] setTintColor:[UIColor blueColor]]; 

가에 따라 다른 레이아웃을 설정하는 표준 추악한 iOS 버전 테스트를 사용하여, 애플리케이션 didFinishLaunchingWithOptions에 레이아웃을 설정처럼 UISegmentedControl 클래스의 apparence을 설정해야 현재 버전

API 참조 용 : https://developer.apple.com/library/ios/documentation/uikit/reference/UIAppearance_Protocol/Reference/Reference.html

UISegmentedControl의 API에서 특정 Appearence 필드를 찾을 수 있습니다. https://developer.apple.com/library/iOs/documentation/UIKit/Reference/UISegmentedControl_Class/Reference/UISegmentedControl.html#//apple_ref/doc/uid/TP40006807-CH3-SW33