在didSelectRowAtIndexPath上添加可编辑的TextView

时间:2012-10-09 13:14:08

标签: objective-c ios ipad

作为我的第一个Objective-C项目,我需要在didSelectRowAtIndexPath

上实现以下内容

enter image description here

您可以忽略第二行中显示“Sikkerhed”的所有内容。我想要的是当按下UITableView中的单元格时弹出键盘的新视图。正在设置的数据和显示的文本将根据选择的行而改变。我该如何实现这样的东西?我需要为此UIViewController新<{1}}吗?

view

2 个答案:

答案 0 :(得分:0)

你必须:

  1. 创建一个UITableViewController
  2. 将tableview的样式设置为分组

    在您的代码中:

  3. 像本教程中一样填写tableview: http://windrealm.org/tutorials/uitableview_uitextfield_form.php

  4. 在didSelectRowAtIndexPath中显示你的viewController:

    • 创建UINavigationController的实例并将modalPresentationStyle设置为仅填充屏幕的一部分:

      navController.modalPresentationStyle = UIModalPresentationFormSheet;
      

      (您可以找到有关modalViewControllers和ModalPresentionStyle的更多信息,例如here

    • 在导航控制器上推送自定义UITableViewController的实例:

      [self.navigationController pushViewController:anotherViewController];
      
  5. 希望这有帮助

答案 1 :(得分:0)

是的,你可以做到

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
   // find with cell has been pressed
   // with indexPath.row

   // instantiate your new viewController depending on the logic of the cell selected
   // for example
   MyCustomViewController* mcvc = [[MyCustomViewController alloc] initWithNibName:bundle]

   // do ur logic
   // Note, u should get your viewController embedded into a uinavigationContrlller, 
   // so you can
   [self.navigationController pushViewController: [mcvc autorelease] animated:YES];

}