Ios 在运行时切换到FlatUIKit分段控件
我通过故事板设置了一个Ios 在运行时切换到FlatUIKit分段控件,ios,objective-c,uisegmentedcontrol,flat,Ios,Objective C,Uisegmentedcontrol,Flat,我通过故事板设置了一个UISegmentedControl,我有一个插座。在运行时,我有一种方法可以检查操作系统是否小于iOS7,如果小于iOS7,我需要将UISegmentedControl替换为FlatUIKit中的分段控件。该类称为FUISegmentedControl,它继承自UISegmentedControl。以下是它的初始化方法: + (void)initialize { if (self == [FUISegmentedControl class]) {
UISegmentedControl
,我有一个插座。在运行时,我有一种方法可以检查操作系统是否小于iOS7,如果小于iOS7,我需要将UISegmentedControl
替换为FlatUIKit中的分段控件。该类称为FUISegmentedControl
,它继承自UISegmentedControl
。以下是它的初始化方法:
+ (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]];
}
}
我不知道如何在运行时用这个FUISegmentedControl
替换UISegmentedControl
以下是指向FlatUIKit的GitHub链接:
我用代码而不是故事板对这个问题进行了排序
if (IS_IOS7)
{
self.segmCntr = [[UISegmentedControl alloc] initWithFrame:CGRectMake(10, 10, 100, 30)];
}
else
{
self.segmCntr = [[FUISegmentedControl alloc] initWithFrame:CGRectMake(10, 10, 100, 30)];
}
我想知道你的问题是否需要重新措辞。尝试添加更多有关您试图实现的目标的详细信息。我应该如何初始化FUISegmentedControl?FUISegmentedControl*segmentedControl=[[FUISegmentedControl alloc]init]?self.segmCntr应该是什么类型?它应该是UISegmentedControl类型。这样,我无法编辑来自FuisegmentedControls的属性。我不知道您到底想做什么。您可以这样创建对象:如果IOS7 UISegmentedControl*segmCntr=[[UISegmentedControl alloc]initWithFrame…]否则FUISegmentedControl*flatSegmCntr=[[FUISegmentedControl alloc]initWithFrame…],您可以根据此属性设置标识它的标记。
if (IS_IOS7)
{
self.segmCntr = [[UISegmentedControl alloc] initWithFrame:CGRectMake(10, 10, 100, 30)];
}
else
{
self.segmCntr = [[FUISegmentedControl alloc] initWithFrame:CGRectMake(10, 10, 100, 30)];
}