如果用户点击“加号”符号,如何在UITableviewcell中显示UITextfields

时间:2014-01-30 10:15:45

标签: ios iphone objective-c uitableview

嗨我有一个UITableviewCell,我在UITableviewcell的末尾添加了“+”符号。我的要求是如果我点击UITableviewcell中的“+”符号显示三个UITextfields在下一个UITableviewcell。我还想在默认情况下在第一个UITextfields中显示3个UITableviewcell。并且“+”符号显示在总tableview上。但我想要显示“+”动态标志。我该怎么做这个功能。请帮助我任何身体。 这是我的代码。

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 3;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 3;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *cellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];

    if (!cell) 
    {
      cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellIdentifier];
    }
    [cell.textLabel setText:@""];
    UIButton *myGreenIconButton = [UIButton buttonWithType:UIButtonTypeCustom];
    [myGreenIconButton addTarget:self action:@selector(GreenIconButtonClicked:)forControlEvents:UIControlEventTouchUpInside];
    [myGreenIconButton setBackgroundImage:[UIImage imageNamed:@"index.jpg"] forState:UIControlStateNormal];
    myGreenIconButton.backgroundColor = [UIColor clearColor];
    myGreenIconButton.frame = CGRectMake(285, 28, 25, 25);
    [cell addSubview:myGreenIconButton];
    return cell;
}

2 个答案:

答案 0 :(得分:0)

您应该设置初始号码。部分为一个,没有。行数为3,每行有一个UITextfield然后点击加号按钮增加后没有。包含1的部分,并使用UITableview重新加载[tableview reloaddata];

在此之前,您需要在每个部分的底部添加{+ 1}}和- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section等委托方法,因为您需要它。

请参阅this question,了解如何为每个部分添加页脚视图。

答案 1 :(得分:0)

最好使用db或plist文件来设置动态表,但是 您可以在xcode的第一个表格中手动插入您想要的内容,例如我的屏幕:

Table with UITextField an UIImage 然后你可以使用标签:

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

    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
    }

UIImageView *logoImageView = (UIImageView *)[cell viewWithTag:1];
        logoImageView.image = [self.cachedImages valueForKey:identifier];

UILabel *detailLabel = (UILabel *)[cell viewWithTag:2];
    detailLabel.text = (self.loadImage)[indexPath.row][@"subtitle"];
}

在界面上设置标签,选择您的对象并继续执行属性检查器:

enter image description here

当表格加载动态显示您的图片或文字时,请使用

将此信息传递给DetailViewController
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
} 

在这里,您可以看到UITableViewplist教程:

UITableView and Plist tutorial

希望这能帮到你