首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在UITableViews之间传递对象

在UITableViews之间传递对象
EN

Stack Overflow用户
提问于 2012-03-23 06:35:46
回答 3查看 141关注 0票数 0

我正在尝试实现-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

到目前为止,这是我在第一个UITableViewController中所做的:

代码语言:javascript
运行
复制
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{    
    secondviewcontroller *vc = [[secondviewcontroller alloc]init];

    BudgetPlan *tempBudget = [self.budgetElements objectAtIndex:indexPath.row];

    vc.budgetPlan = tempBudget;
}

我的第二个视图控制器有ff:

代码语言:javascript
运行
复制
// secondviewcontroller.h

@property (strong, nonatomic) BudgetPlan *budgetPlan;


//secondviewcontroller.m

@synthesize budgetPlan = _budgetPlan

- (void)viewDidLoad
{
    [super viewDidLoad];

    NSLog(@"%@ was passed with %@",self.budgetPlan.name, self.budgetPlan.amount);

self.budgetName.text = _budgetPlan.name;
    self.amountBudgeted.text = [NSString stringWithFormat:@"%.02f", _budgetPlan.amount];
}

不幸的是,NSLog显示为空。因此,UILabels budgetName.text和amountBudgeted.text也为空。

我已经设置了数据源并委托给包含UITableView元素(这不是UITableViewController)的自定义UIViewController。看起来我正在传递对象,但它似乎并没有传递...

我哪里错了?

EN

Stack Overflow用户

回答已采纳

发布于 2012-03-27 08:10:16

谢谢大家。问题似乎是我对故事板的使用。这

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath方法似乎只有在不使用故事板的情况下才有效。

我用Segues来回答这个问题。

代码语言:javascript
运行
复制
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {

/*
 When a row is selected, the segue creates the detail view controller as the destination.
 Set the detail view controller's detail item to the item associated with the selected row.
 */

    if ([[segue identifier] isEqualToString:@"showDetailsOfBudget"]) 
    {
        NSIndexPath *indexPath = [self.budgetsTable indexPathForSelectedRow];
        BudgetDetailsViewController *detailsViewController = [segue destinationViewController];
        detailsViewController.budget = [self.budgetPlan.budgets objectAtIndex:indexPath.row];
    }
}
票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9831573

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档