从tableView获取indexPath.row到单元格

时间:2012-07-16 11:28:58

标签: ios xcode

编辑:简而言之:如何从UICell类访问单元格的索引?因为atm我只能从UITableView类中的方法获得它。 编辑结束

我有一个iOS应用程序并添加了一个UITableView。我用自定义UICell填充它,在UITableView中我用这个方法删除一行并从数据源中删除对象

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

我还在UICell中添加了一个修改按钮,所以我也必须访问数据源,但我不能,因为它是UITableView类,我无法从UICell类访问它。

最佳解决方案是什么?我是否必须为我的数据源创建一个类,并且两个类(UITableView和UICell)都可以访问它?如果是这样,我该怎么做?对不起我是MVC的新手,请帮助:))

提前致谢

3 个答案:

答案 0 :(得分:2)

我认为最好的方法是实现模式Singleton

问候。

#import "MySingleton.h"

@implementation MySingleton
+(MySingleton *) sharedInstance{
   static  MySingleton *inst = nil;

    @synchronized(self){
        if (!inst) {
            inst = [[self alloc] init];
        }
    }
   return inst;
}

@end

答案 1 :(得分:1)

当我需要做这样的事情时,我的方法是使用NSNotification。单元格会触发自定义通知并附加self作为通知对象。数据源侦听通知,并自行处理操作或通过提取单元对象并将其需要的任何内容发送回来进行响应。

答案 2 :(得分:0)

您可能正在从数组填充表格,如果是这种情况,您可以删除索引处的数组元素(选定的索引)并重新加载tableview。