Tableview推送到不同的视图

Posted

技术标签:

【中文标题】Tableview推送到不同的视图【英文标题】:Tableview push to different view 【发布时间】:2012-11-26 09:12:57 【问题描述】:

我有这段代码,当按下一个单元格时,它会推送到一个新视图。这个新视图会根据按下的单元格的名称更改其标题。但是,所有单元格的视图都是相同的,如果我在一个单元格下更改某些内容,它会更改每个其他单元格的视图。我该如何做到这一点,以便每个单元格的每个视图都不同,而不会创建大量视图;这是不切实际的。谢谢。

推送代码:

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
[self.tableView deselectRowAtIndexPath:indexPath animated:YES];

ACollection *newView = [[ACollection alloc] init];
newView.template = [[Global collections] objectAtIndex:indexPath.row];

newView.theTitle = [self.tableView cellForRowAtIndexPath:indexPath].textLabel.text;
[self.navigationController pushViewController:newView animated:YES];

【问题讨论】:

您可以在您的第二类(Acollection)中使用NSString *mystring;,并在didSelectRowAtIndexPath 中将其值分配为newView.mystring=[self.tableView cellForRowAtIndexPath:indexPath].textLabel.text;,在您的第二类视图Viewdidload 中使用self.title=mystring 【参考方案1】:

theTitle 似乎是您在单元格选择中设置的局部变量。 但是,导航控制器在导航项中设置视图控制器的标题。 因此,您可以设置 AVCollections 标题,如 tis:

newView.navigationItem.title = [self.tableView cellForRowAtIndexPath:indexPath].textLabel.text;

在单元格选择期间。

【讨论】:

【参考方案2】:

好吧,现在考虑我们在数组中有字符串。(数组项的数量等于单元格的数量。或者我们可以说您正在从数组中加载详细信息。)。

首先,在didSelectRowAtIndexPath:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath     
         // Here we got the name of the item we are currently going to load
         NSString *item_Name   =   [contentArray objectAtIndex: indexPath.row];
         ViewController *yourViewController   =  [[ViewController alloc] initWithNIBName: @"ViewController" bundle: nil];
         yourViewController.navigationItem.title  =  item_Name;
         [self.navigationController pushViewController: yourViewController animated: YES];
 

或者像lukya说的你可以使用

NSString *item_Name   =   [self.tableView cellForRowAtIndexPath:indexPath].textLabel.text;

如果要将单元格本身的标题标签设置为详细视图的标题。

希望这会有所帮助。

【讨论】:

以上是关于Tableview推送到不同的视图的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Alamofire 生成的数据从 tableview 推送到 webview

TableView 在 Swift 中推送到详细视图

表视图推送到新视图 XIB 的

解压缩并将内容推送到表格视图中

将数据推送到表详细视图

表格视图不会推送到下一个视图