Ipad Can';无法从tableview中删除行
在我的应用程序中,我无法从tableview中删除行。tableview的内容以web(GET)响应的形式出现,我在tableview中显示它,我在第二个视图控制器中显示它的一些详细信息(单击索引处的行时推送…)有人能帮忙吗? 以下是我的一些代码:(在viewDidLoad中)Ipad Can';无法从tableview中删除行,ipad,uitableview,ios5,nsdictionary,Ipad,Uitableview,Ios5,Nsdictionary,在我的应用程序中,我无法从tableview中删除行。tableview的内容以web(GET)响应的形式出现,我在tableview中显示它,我在第二个视图控制器中显示它的一些详细信息(单击索引处的行时推送…)有人能帮忙吗? 以下是我的一些代码:(在viewDidLoad中) mm包含一些属性(例如日期、消息…),我想我需要从字典中删除索引处的对象。我如何处理这种情况 编辑-2: 这是我的JSON对象 { button = 30; message = (
mm
包含一些属性(例如日期、消息…),我想我需要从字典中删除索引处的对象。我如何处理这种情况
编辑-2:
这是我的JSON对象
{
button = 30;
message = (
{
date = "2012-03-21 20:13:10";
message = "message 1";
},
{
date = "2012-03-21 20:13:42";
message = "asdf nkop jp?l?f";
},
{
date = "2012-03-22 10:06:11";
message = "test local notification message";
},
{
date = "2012-03-22 10:06:41";
message = "second test of uilocalnotification";
},
{
date = "2012-03-22 10:08:13";
message = "third test of notification";
}
);
}
这是我的初始化代码:
sharedDa= (BNT_AppDelegate *)([[UIApplication sharedApplication]delegate]);
//mm is mutableDictionary and the others are mutable array
mm= [[sharedDa messagesDict]objectForKey:@"message"];
// NSLog(@"JSON message: %@", [sharedDa messagesDict]);
buttonVersion= [sharedDa.messagesDict objectForKey:@"button"];
mySecondArray= [mm valueForKey:@"date"];
myIDsArray=[mm valueForKey:@"ID"];
我解析了我的可变字典并用它初始化了不同的可变数组,这里正是我删除行的委托方法
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete) {
// Delete the row from the data source
NSLog(@"Thread: %@", [NSThread currentThread]);
[self.myIDsArray removeObjectAtIndex:indexPath.row];
[self.myArray removeObjectAtIndex:indexPath.row];
[self.mySecondArray removeObjectAtIndex:indexPath.row];
[self.buttonVersion removeObjectAtIndex:indexPath.row];
//
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade]; } }
我的应用程序崩溃,在控制台中我看到以下三行代码:
Thread: <NSThread: 0x75719d0>{name = (null), num = 1}
[Switching to process 1472 thread 0x10a03]
(gdb)
线程:{name=(null),num=1}
[切换到进程1472线程0x10a03]
(gdb)
我知道这成了一个很长的问题,但谁能给我一个想法呢?首先:把变量命名得有点可读,
mm
看起来有点愚蠢
假设字典中有三个不同的对象,创建三个不同的NSMutableArray
s来保存这些对象,并在
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{}
对所有数组使用方法removeObjectAtIndex:
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{}