Objective c UISegmentedControl分割器图像未显示
我有一个Objective c UISegmentedControl分割器图像未显示,objective-c,ios,cocoa-touch,uisegmentedcontrol,Objective C,Ios,Cocoa Touch,Uisegmentedcontrol,我有一个UISegmentedControl,我正在尝试设置分割图像。图像为黑色,约2倍宽 UIImage *divider = [UIImage imageNamed:@"ZSDivider.png"]; [self.segmentedControl setDividerImage:divider forLeftSegmentState:UIControlStateNormal rightSegmentState:UIControlStateNormal barMetrics:UIBarMet
UISegmentedControl
,我正在尝试设置分割图像。图像为黑色,约2倍宽
UIImage *divider = [UIImage imageNamed:@"ZSDivider.png"];
[self.segmentedControl setDividerImage:divider forLeftSegmentState:UIControlStateNormal rightSegmentState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[self.segmentedControl setDividerImage:divider forLeftSegmentState:UIControlStateSelected rightSegmentState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[self.segmentedControl setDividerImage:divider forLeftSegmentState:UIControlStateNormal rightSegmentState:UIControlStateSelected barMetrics:UIBarMetricsDefault];
我不想要任何花哨的分割线,只是每个州都有一条黑线,但它根本没有出现
你知道我做错了什么吗?你确定“分隔符”和“self.segmentedControl
”不为空吗
这看起来是进行错误检查的绝佳机会:
UIImage *divider = [UIImage imageNamed:@"ZSDivider"];
if(divider)
{
if(self.segmentedControl)
{
[self.segmentedControl setDividerImage:divider forLeftSegmentState:UIControlStateNormal rightSegmentState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[self.segmentedControl setDividerImage:divider forLeftSegmentState:UIControlStateSelected rightSegmentState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[self.segmentedControl setDividerImage:divider forLeftSegmentState:UIControlStateNormal rightSegmentState:UIControlStateSelected barMetrics:UIBarMetricsDefault];
} else {
NSLog( @"segmentedControl is NULL");
}
} else {
NSLog( @"divider image is NULL");
}
分割图像的高度是否与分割控件的高度相同?如果我没记错的话,UISegmentedControl在分隔器与控件高度不匹配时会出现问题。没有,一切正常。奇怪的是,当我点击了几个片段后,分隔符终于显示出来了,但只在中间和右边的片段之间。