2013-11-22 2 views
0

У меня есть UISegmentedControl, установленный в раскадровке, и у меня есть выход для него. Во время выполнения у меня есть метод, который проверяет, что операционная система меньше iOS7, и если мне нужно заменить UISegmentedControl на сегментированный элемент управления от FlatUIKit. Класс называется FUISegmentedControl, и он наследуется от UISegmentedControl. Вот это метод инициализации:Переключение на сегментированный контроль FlatUIKit во время выполнения

+ (void)initialize { 
    if (self == [FUISegmentedControl class]) { 
     FUISegmentedControl *appearance = [self appearance]; 
     [appearance setCornerRadius:5.0f]; 
     [appearance setSelectedColor:[AppereanceConfiguration defaultTintColor]]; 
     [appearance setDeselectedColor:[UIColor whiteColor]]; 
     [appearance setDividerColor:[AppereanceConfiguration defaultTintColor]]; 
     [appearance setSelectedFont:[AppereanceConfiguration fontLightWithSize:16]]; 
     [appearance setDeselectedFont:[AppereanceConfiguration fontLightWithSize:16]]; 
     [appearance setSelectedFontColor:[UIColor whiteColor]]; 
     [appearance setDeselectedFontColor:[AppereanceConfiguration defaultTintColor]]; 
    } 
} 

Я не знаю, как заменить UISegmentedControl с этим FUISegmentedControl во время выполнения.

Вот ссылка на GitHub FlatUIKit: FlatUIKit

+0

Пожалуйста, перефразируйте ваш вопрос. Попытайтесь добавить более подробную информацию о том, чего вы пытаетесь достичь. – Suhas

ответ

1

Я отсортирован этот вопрос с кодом вместо раскадровки.

проверить, если IOS < 7 с этим:

#define IS_IOS7 ([[UIDevice currentDevice].systemVersion floatValue] >=7) 

И я добавил свои элементы управления, а не программно с раскадровки.

if (IS_IOS7) 
{ 
    self.segmCntr = [[UISegmentedControl alloc] initWithFrame:CGRectMake(10, 10, 100, 30)]; 
} 
else 
{ 
    self.segmCntr = [[FUISegmentedControl alloc] initWithFrame:CGRectMake(10, 10, 100, 30)]; 
} 
+0

Как включить FUISegmentedControl? FUISegmentedControl * segmentedControl = [[FUISegmentedControl alloc] init]; ? – damjandd

+0

Какой тип должен быть self.segmCntr be? – damjandd

+0

Должен быть тип UISegmentedControl. – Greg

Смежные вопросы