在选择 tableview 项目时更新 ViewController 文本框
Posted
技术标签:
【中文标题】在选择 tableview 项目时更新 ViewController 文本框【英文标题】:updating ViewController textbox on selecting a tableview item 【发布时间】:2012-12-25 18:23:45 【问题描述】:我创建了一个基于视图的应用程序,它为没有导航控制器的 Iphone 故事板提供了模式链接视图控制器。对于我的一个视图控制器,我设计了一个带有动态单元格的表格视图:
- (void)viewDidLoad
[super viewDidLoad];
tabledata =[[NSArray alloc] initWithObjects:@"Data Mining",@"Software Quality",@"Project Management",@"Data Base", nil];
tablesubtitles =[[NSArray alloc] initWithObjects:@"Test parsing and KDD",@"Management of Software Creation Cycle",@"Roles in a Project",@"Database Lifecycle process", nil];
- (NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
return [tabledata count];
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
UITableViewCell *cell=nil;
cell= [ tableView dequeueReusableCellWithIdentifier:@"Cell1"];
if (cell == nil)
cell= [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"Cell1"];
cell.textLabel.text= [tabledata objectAtIndex:indexPath.row];
cell.detailTextLabel.text =[tablesubtitles objectAtIndex:indexPath.row];
return cell;
接下来我想实现的是将 tableview 行链接到 ViewController 上,该 ViewController 上有几个可用的文本框。最大的想法是,在选择一个 TableItem 时,我想加载一个 ViewController 并根据所选项目自动填充文本框,最好有一个编辑/保存的可能性。
例如:我有一个包含项目的 Tableview
道奇 克莱斯勒 雪佛兰 福特
按下“Dodge”时,会出现一个新的 ViewController,其中包含多个 TextBox,并且数据中会填充一些详细信息,例如“Since 1900”。 在编辑“Since 1900”文本框并按下保存按钮时,控件返回到其中包含 TableView 的 viewcontroller。
在第二次按“闪避”后显示以前保存的项目。
我已经尝试了很多变体、组合如何实现它,我是 Xcode 的新手,任何帮助都会非常有用。
提前谢谢你。
【问题讨论】:
【参考方案1】:这并不难。基本上你只需要在你的 UITableView 委托中实现didSelectRowAtIndexPath
。要了解如何执行此操作,请在 XCode 中创建一个新项目并使其成为 MasterDetail 应用程序。这为您提供了具有可选行的表视图的样板代码。 Master 视图是您的表格,Detail 视图是您处理所选行的方式。
【讨论】:
以上是关于在选择 tableview 项目时更新 ViewController 文本框的主要内容,如果未能解决你的问题,请参考以下文章
如何在 tableView 行选择时更新我的 fetchedResultsController?
从 tableView 中选择项目时触发另一个函数后执行函数