- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
id <NSFetchedResultsSectionInfo> sectionInfo = [[self.fetchedResultsController sections] objectAtIndex:section];
if(tempArray != nil){
for (int i = 0; i < [tempArray count]; i++)
{
if([[sectionInfo indexTitle] isEqualToString:[tempArray objectAtIndex:i]])
// if([sectionInfo indexTitle] == [tempArray objectAtIndex:i])
{
NSLog(@"found");
break;
} else
{
NSLog(@"Not found %@", [sectionInfo indexTitle]);
[tempArray addObject:[sectionInfo indexTitle]];
NSLog(@"array %@", tempArray);
return [tempArray objectAtIndex:i];
}
}
}
}
if 문의 문자열 비교는 절대로 true로 해석되지 않습니다. 샘플 데이터에는 테스트 목적으로 두 개의 중복 인스턴스가 있습니다. 내가 틀린 것으로 생각 되긴하지만 주석 처리 된 선은 대체 부분이며, 섹션을 tempArray의 문자열과 비교하려고 시도합니다.Objective-c : 두 개의 문자열이 올바르게 작동하지 않음을 비교합니다.
내가 뭘 잘못하고 있니?
또한 모든 데이터는 대문자이므로 대문자와 소문자의 비교는 아닙니다.
편집 :
NSLogs :
2010-06-08 11:25:03.276 XYZApplication[5287:207] Not found Z
2010-06-08 11:25:03.277 XYZApplication[5287:207] section: 10
2010-06-08 11:25:03.279 XYZApplication[5287:207] [sectionInfo indexTitle] Z
2010-06-08 11:25:03.284 XYZApplication[5287:207] [sectionInfo objects] (
Z
)
2010-06-08 11:25:03.284 XYZApplication[5287:207] array (
""
)
2010-06-08 11:25:03.285 XYZApplication[5287:207] Not found A
2010-06-08 11:25:03.285 XYZApplication[5287:207] section: 0
2010-06-08 11:25:03.286 XYZApplication[5287:207] [sectionInfo indexTitle] A
2010-06-08 11:25:03.286 XYZApplication[5287:207] [sectionInfo objects] (
"Andy the Clown"
)
2010-06-08 11:25:03.287 XYZApplication[5287:207] array (
"",
Z
)
2010-06-08 11:25:03.288 XYZApplication[5287:207] Not found B
2010-06-08 11:25:03.289 XYZApplication[5287:207] section: 1
2010-06-08 11:25:03.289 XYZApplication[5287:207] [sectionInfo indexTitle] B
2010-06-08 11:25:03.290 XYZApplication[5287:207] [sectionInfo objects] (
"Baseball Annie"
)
2010-06-08 11:25:03.291 XYZApplication[5287:207] array (
"",
Z,
A
)
2010-06-08 11:25:03.291 XYZApplication[5287:207] Not found B
2010-06-08 11:25:03.292 XYZApplication[5287:207] section: 2
2010-06-08 11:25:03.292 XYZApplication[5287:207] [sectionInfo indexTitle] B
2010-06-08 11:25:03.293 XYZApplication[5287:207] [sectionInfo objects] (
"Baseball Bugs"
)
2010-06-08 11:25:03.293 XYZApplication[5287:207] array (
"",
Z,
A,
B
)
2010-06-08 11:25:03.294 XYZApplication[5287:207] Not found D
2010-06-08 11:25:03.295 XYZApplication[5287:207] section: 3
2010-06-08 11:25:03.295 XYZApplication[5287:207] [sectionInfo indexTitle] D
2010-06-08 11:25:03.296 XYZApplication[5287:207] [sectionInfo objects] (
""
)
2010-06-08 11:25:03.296 XYZApplication[5287:207] array (
"",
Z,
A,
B,
B
)
2010-06-08 11:25:03.296 XYZApplication[5287:207] Not found E
2010-06-08 11:25:03.304 XYZApplication[5287:207] section: 4
2010-06-08 11:25:03.305 XYZApplication[5287:207] [sectionInfo indexTitle] E
2010-06-08 11:25:03.306 XYZApplication[5287:207] [sectionInfo objects] (
E
)
2010-06-08 11:25:03.306 XYZApplication[5287:207] array (
"",
Z,
A,
B,
B,
D
)
2010-06-08 11:25:03.307 XYZApplication[5287:207] Not found F
2010-06-08 11:25:03.307 XYZApplication[5287:207] section: 5
2010-06-08 11:25:03.308 XYZApplication[5287:207] [sectionInfo indexTitle] F
2010-06-08 11:25:03.310 XYZApplication[5287:207] [sectionInfo objects] (
Frank
)
2010-06-08 11:25:03.310 XYZApplication[5287:207] array (
"",
Z,
A,
B,
B,
D,
E
)
2010-06-08 11:25:03.311 XYZApplication[5287:207] Not found H
2010-06-08 11:25:03.311 XYZApplication[5287:207] section: 6
2010-06-08 11:25:03.312 XYZApplication[5287:207] [sectionInfo indexTitle] H
2010-06-08 11:25:03.313 XYZApplication[5287:207] [sectionInfo objects] (
H
)
2010-06-08 11:25:03.313 XYZApplication[5287:207] array (
"",
Z,
A,
B,
B,
D,
E,
F
)
2010-06-08 11:25:03.314 XYZApplication[5287:207] Not found J
2010-06-08 11:25:03.315 XYZApplication[5287:207] section: 7
2010-06-08 11:25:03.315 XYZApplication[5287:207] [sectionInfo indexTitle] J
2010-06-08 11:25:03.316 XYZApplication[5287:207] [sectionInfo objects] (
J
)
2010-06-08 11:25:03.316 XYZApplication[5287:207] array (
"",
Z,
A,
B,
B,
D,
E,
F,
H
)
2010-06-08 11:25:03.317 XYZApplication[5287:207] Not found J
2010-06-08 11:25:03.317 XYZApplication[5287:207] section: 8
2010-06-08 11:25:03.329 XYZApplication[5287:207] [sectionInfo indexTitle] J
2010-06-08 11:25:03.330 XYZApplication[5287:207] [sectionInfo objects] (
Joe
)
2010-06-08 11:25:03.330 XYZApplication[5287:207] array (
"",
Z,
A,
B,
B,
D,
E,
F,
H,
J
)
2010-06-08 11:25:03.335 XYZApplication[5287:207] Not found L
2010-06-08 11:25:03.336 XYZApplication[5287:207] section: 9
2010-06-08 11:25:03.336 XYZApplication[5287:207] [sectionInfo indexTitle] L
2010-06-08 11:25:03.337 XYZApplication[5287:207] [sectionInfo objects] (
L
)
2010-06-08 11:25:03.337 XYZApplication[5287:207] array (
"",
Z,
A,
B,
B,
D,
E,
F,
H,
J,
J
)
당신이 문자열의 복사본을 인쇄 할 NSLog를 사용하여 수 있을까요? 추가 공백, 다른 인코딩 등 많은 이유가있을 수 있습니다. – Emil
루프가 첫 번째 반복을 지나치지 않습니다. 왜 루프인가? – drawnonward