1

**。H

IBOutlet UITableView *Table;
NSMutableArray *Currency;
NSArray *Datacell;

** 创建自定义数组

Custom *usd = [Custom new];
usd.name = @"USD";
usd.detail = @"United States Dollar";
usd.imageFile = @"usd.jpg";


Custom *eur = [Custom new];
eur.name = @"EUR";
eur.detail = @"Euro Member Countries";
eur.imageFile = @"eur.jpg";

Custom *aud = [Custom new];
aud.name = @"AUD";
aud.detail = @"Australia Dollar";
aud.imageFile = @"AUD.jpg";
Currency = [NSArray arrayWithObjects:usd,eur,aud, nil];

覆盖以支持编辑表格视图。**

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
 {
 if (editingStyle == UITableViewCellEditingStyleDelete) {
// Delete the row from the data source

     [Currency removeObjectAtIndex:indexPath.row];
     [Table reloadData];
 [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
 }
 else if (editingStyle == UITableViewCellEditingStyleInsert) {
 // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
 }
 }

碰撞:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI removeObjectAtIndex:]: unrecognized selector sent to instance 0x682a0c0'
4

2 回答 2

0

您正在将Currency对象初始化为NSArray

代替

Currency = [NSArray arrayWithObjects:usd,eur,aud, nil];

Currency = [NSMutableArray arrayWithCapacity:3];
[Currency addObject:usd];
[Currency addObject:eur];
[Currency addObject:aud];
于 2013-02-27T10:13:54.233 回答
0

显然,数组货币没有 [Currency removeObjectAtIndex:indexPath.row] 指向的元素;

您已将货币定义为 NSMutableArray 并使用 Currency = [NSArray arrayWithObjects:usd,eur,aud, nil];

使其成为 [NSMutableArray arrayWithObjects:usd,eur,aud, nil];

于 2013-02-27T10:10:41.120 回答