首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >UItableView使用函数delete row

UItableView使用函数delete row
EN

Stack Overflow用户
提问于 2012-02-04 22:18:58
回答 1查看 174关注 0票数 1

我有包含(6个NSMutable数组)数组的NSMutableArray "day“

代码语言:javascript
复制
class Lesson{
    NSString *time1;
    NSString *time2;
    NSString *predmet;
    NSString *namPrepod;
    NSString *zamet;
}

我有获取当前周、日、课的函数

代码语言:javascript
复制
-(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;
}

有了这个函数,我在

代码语言:javascript
复制
- (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;
    ....

不使用的情况下,使用此函数可以删除行吗?

代码语言:javascript
复制
if(segmentedControl.selectedSegmentIndex==0)
if(section==1)
......

该函数需要编辑以删除一行。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-04 22:43:05

在您的单例类中添加一个deleteLessonInWeek:inDay:lessonNumber:,并从tableView:commitEditingStyle:forRowAtIndexPath:实现中调用它:

代码语言:javascript
复制
- (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中的实现可以使用相同的干净模式,即查找日期数组,然后查找其日期内的课程,然后删除请求的项:

代码语言:javascript
复制
-(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];
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9141506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档