gpt4 book ai didi

iphone - UITableViewDelegate 的问题

转载 作者:行者123 更新时间:2023-11-28 23:14:44 25 4
gpt4 key购买 nike

我有一个包含多个部分的 UITableView。我有一个 NSMutableArray 作为数据源 (floorArray)。当我重新加载 tableview 数据时,我得到 [FloorGroup count]: unrecognized selector sent to instance 0x5c18fc0。我的 ViewController 实现了 UITableViewDelegate 和 UITableViewDataSource。我在 FloorGroup 对象上调用计数时看不到任何地方。

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return [floorArray count];

}

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
FloorGroup *group = [floorArray objectAtIndex:section];
return group.floorName;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
FloorGroup *group = [floorArray objectAtIndex:section];
NSMutableArray *areasOnFloor = group.areas;
NSUInteger count = [areasOnFloor count];
return count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
FloorGroup *group = [floorArray objectAtIndex:[indexPath section]];

static NSString *identity = @"MainCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identity];

if(cell == nil)
{
cell = [[[UITableViewCell alloc] initWithFrame:CGRectMake(0.0, 0.0, 0.0, 0.0) reuseIdentifier:identity] autorelease];
}
cell.text = [group.areas objectAtIndex:indexPath.row];

return cell;
}

我的类定义是:

@interface FloorGroup : NSObject {
NSString *floorName;
NSMutableArray *areas;
}

@interface FloorArea : NSObject {
NSString *floor;
NSString *description;
NSDecimalNumber *area;
NSDecimalNumber *price;
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
}

准确的错误是:

2011-08-05 10:54:58.692 com.Lime49.myApp[1987:207] -[FloorGroup count]: unrecognized selector sent to instance 0x5d93c90
2011-08-05 10:54:58.694 com.Lime49.myApp[1987:207] NSInvalidArgumentException
2011-08-05 10:55:02.321 com.Lime49.myApp[1987:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[FloorGroup count]: unrecognized selector sent to instance 0x5d93c90'
*** Call stack at first throw:
(
0 CoreFoundation 0x0139f5a9 __exceptionPreprocess + 185
1 libobjc.A.dylib 0x014f3313 objc_exception_throw + 44
2 CoreFoundation 0x013a10bb -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
3 CoreFoundation 0x01310966 ___forwarding___ + 966
4 CoreFoundation 0x01310522 _CF_forwarding_prep_0 + 50
5 UIKit 0x006492b7 -[UISectionRowData refreshWithSection:tableView:tableViewRowData:] + 1834
6 UIKit 0x00646d88 -[UITableViewRowData numberOfRows] + 108
7 UIKit 0x004fa677 -[UITableView noteNumberOfRowsChanged] + 132
8 UIKit 0x00507708 -[UITableView reloadData] + 773
9 Foundation 0x0020b94e __NSThreadPerformPerform + 251
10 CoreFoundation 0x013808ff __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
11 CoreFoundation 0x012de88b __CFRunLoopDoSources0 + 571
12 CoreFoundation 0x012ddd86 __CFRunLoopRun + 470
13 CoreFoundation 0x012dd840 CFRunLoopRunSpecific + 208
14 CoreFoundation 0x012dd761 CFRunLoopRunInMode + 97
15 GraphicsServices 0x01b3c1c4 GSEventRunModal + 217
16 GraphicsServices 0x01b3c289 GSEventRun + 115
17 UIKit 0x0049ac93 UIApplicationMain + 1160
18 com.Lime49.myApp 0x00002256 main + 84
19 com.Lime49.myApp 0x000021f9 start + 53
)
terminate called after throwing an instance of 'NSException'

最佳答案

您的错误看起来像您的对象具有类 FloorGroup 而不是 floorArray 的指针。

要么您的数组已被释放并且其内存被 FloorGroup 对象占用。调试您的 floorArray 是否有对象。

关于iphone - UITableViewDelegate 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6954226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com