我有NSMutableArray“day”,其中包含(6个NSMutable数组)数组
class Lesson{
NSString *time1;
NSString *time2;
NSString *predmet;
NSString *namPrepod;
NSString *zamet;
}
我有能力获得当前的一周,一天,一课
-(Lesson *)lessonInWeek:(int)week inDay:(int)day lessonNumber:(int)lNumber
{
Week *currentWeek = nil;
if(week)
currentWeek = nechetNedel;
else
currentWeek = chetNedel;
NSMutableArray *dayArray = [currentWeek.days objectAtIndex:day];
Lesson *lesson = [dayArray objectAtIndex:lNumber];
return lesson;
}
使用此功能我在
中显示- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
......
Lesson *item = [[Singleton sharedInstance] lessonInWeek:segmentedControl.selectedSegmentIndex inDay:indexPath.section lessonNumber:indexPath.row];
....
time1.text= item.time1;
....
time2.text= item.time2;
....
predmet.text=item.predmet;
.....
namePrepod.text=item.namPrepod;
......
zamet.text=item.zamet;
....
我可以使用此功能删除一行而不使用?
if(segmentedControl.selectedSegmentIndex==0)
if(section==1)
......
该功能需要编辑才能删除一行。
答案 0 :(得分:0)
在您的单身人士课程中添加deleteLessonInWeek:inDay:lessonNumber:
,并从tableView:commitEditingStyle:forRowAtIndexPath:
实施中调用它:
- (void) tableView:(UITableView*)tableView
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
forRowAtIndexPath:(NSIndexPath*)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
[[Singleton sharedInstance] deleteLessonInWeek:segmentedControl.selectedSegmentIndex inDay:indexPath.section lessonNumber:indexPath.row];
}
}
实现在Singleton
之后可以使用相同的查找日期数组的清晰模式,然后是当天的课程,然后删除所请求的项目:
-(void)deleteLessonInWeek:(int)week inDay:(int)day lessonNumber:(int)lNumber {
// Choose odd or even week:
Week *currentWeek = week ? nechetNedel : chetNedel;
NSMutableArray *dayArray = [currentWeek.days objectAtIndex:day];
[dayArray removeObjectAtIndex:lNumber];
}