现在,我在另一个控制器中编写代码
// self.segmentedControl = [[redSegmentedControl alloc] initWithFrame:CGRectMake(0, 140, 320, 50)];
self.segmentedControl = [[redSegmentedControl alloc] initWithSectionImages:@[@"list.png", @"list.png", @"list.png"] sectionSelectedImages:@[@"list.png", @"list.png", @"list.png"]];
//[self.segmentedControl setSectionTitles:@[@"List", @"Activity", @"Top Tags"]];
如果注释行被删除,它工作正常,但如果运行此代码,它会给出错误。
-[__NSCFConstantString size]: unrecognized selector sent to instance ...
我跟踪并在- (void)updateSegmentsRects方法的这些行中发现了问题。
for (UIImage *sectionImage in self.sectionImages) {
CGFloat imageWidth = sectionImage.size.width + self.segmentEdgeInset.left + self.segmentEdgeInset.right;
self.segmentWidth = MAX(imageWidth, self.segmentWidth);
}
在这里,它访问放入数组中的图像的大小,但给出错误,任何人都可以替换代码或告诉我原因。