如何将UISwitch添加到分组表视图中的单元格

时间:2012-09-03 07:40:21

标签: xamarin.ios uitableview

我正在尝试将UISwitch添加到分组表视图中的单元格,但我没有得到正确的方法来执行此操作。请帮我。 谢谢&问候, 查克里

3 个答案:

答案 0 :(得分:1)

UISwitch按钮设为UITableViewCell的附件:

-(UITableViewCell*) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString* cellId = @"cellId";
    UITableViewCell* cellView = [self.tableView dequeueReusableCellWithIdentifier:cellId];
    if(!cellView) {
        cellView = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellId];
        UISwitch* switchBtn = [[UISwitch alloc] init];
        [switchBtn addTarget:self action:@selector(onSwitchBtn:) forControlEvents:UIControlEventValueChanged];
        cellView.accessoryView = switchBtn;
    }
    return cellView;
}

答案 1 :(得分:1)

您可以将C#转换为现有(Objective-C)答案,但是,由于您使用的是MonoTouch,因此您应该查看MonoTouch.Dialog(以及它的示例应用程序)。

它在UITableView之上提供了一个更简单的API,并且仍然涵盖了大多数需要表格的常见用法/场景。

查看屏幕截图(来自上一个链接),查看单元格中使用的UISwitch

答案 2 :(得分:0)

你正在使用故事板或xib吗? 我认为在故事板中你可以将UISwith拖到单元格中。

如果您使用的是xib,则需要一个自定义单元格。使用界面构建器将UITableViewCell拖到tableview外的xib,将UISwitch拖到UITableViewCell中,然后将IBOutlet放在UITableViewCell中,然后

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.row == rowWhereYouWantTheCellWithTheUISwitch){
    return UITableViewCellWithTheSwitchName;
}
}

rowWhereYouWantTheCellWithTheUISwitch是您想要自定义单元格的单元格的编号。 UITableViewCellWithTheSwitchName是您创建的IBOutlet的名称。