如何将tableviewcell对象连接到tableviewcontroller?

时间:2013-01-21 03:50:09

标签: ios uitableview

使用原型单元和自定义UITableViewCell与UISwitch和UIActivityIndi​​cator。翻转开关会导致NSURL Post请求并禁用该开关。这很好。

现在,我想连接活动指示器,让它在网络请求正常工作期间旋转。

在子类UITableViewCell .h / .m

中添加了这个
@property (nonatomic, weak) IBOutlet UIActivityIndicatorView *activity;

@synthesize activity;

<击>

然后在UITableViewController中,使用:

接收交换机更改
- (IBAction)changeSwitch:(id)sender
{
     UISwitch *mySwitch = (UISwitch *)sender;
    [sender setEnabled:NO];
    // turn on activity indicator  (**Edited next 2 lines**)
    UIActivityIndicatorView *av = (UIActivityIndicatorView*) [[self view] viewWithTag:2101];
    [av setHidden:YES];
    // create a datamanager to send the request
    ...
}

我查看了标签,连接,并考虑调用TableViewCell的方法来启动/停止指示器,但找不到答案。

交换机的操作如何连接以启动活动指示器?

3 个答案:

答案 0 :(得分:1)

解决了连接到这些原型单元对象的问题,首先在故事板属性检查器中为它们提供标签号,以用于活动指示器&amp;切换,然后使用:

从UITableViewController(子类)中访问它们的属性
UIActivityIndicatorView *av = (UIActivityIndicatorView*) [[self view] viewWithTag:2101];
[av setHidden:YES];

UISwitch *sw = (UISwitch*) [[self view] viewWithTag:210];
[sw setEnabled:YES];

答案 1 :(得分:0)

为什么不使用这样的代码:

self.activity.hidden = NO;

答案 2 :(得分:0)

当您提出请求时启动指标。当调用didReceiveResponse函数时,请停止指示。