将字符串传递给模态视图

Posted

技术标签:

【中文标题】将字符串传递给模态视图【英文标题】:Passing a string to a modal view 【发布时间】:2012-03-26 10:33:09 【问题描述】:

单击时,我试图从表格行中的对象中获取字符串。我已经看过有关获取字符串并将其传递给合成标签的教程,但是我无法在我的模态视图中将相同的字符串传递给合成字符串。这可能吗?我在父视图中的代码如下。

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

    Modules *selectedModule;
    selectedModule = [fixedArray objectAtIndex:indexPath.row];
    NSString *moduleComponent = [selectedModule valueForKey:@"name"];

    DetailViewController *detail = [self.storyboard instantiateViewControllerWithIdentifier:@"Detail"];


    [self.navigationController pushViewController:detail animated: YES];

    detail.number.text = moduleComponent;

    detail.moduleLabel.text = moduleComponent;



    detail.module = moduleComponent;


detail.moduleLabel.text 显示正确,但是当我尝试使用 detail.module 发出警报或绘制标签时,我收到 null。非常感谢任何帮助。

【问题讨论】:

【参考方案1】:

将值分配给细节控制器后移动[self.navigationController pushViewController:detail animated: YES];

编辑: 另一点需要注意的是,您究竟何时尝试提醒它 - viewDidLoad、viewWillAppear、viewDidAppear。尝试不同的方法,看看结果如何。很抱歉,但我现在无法对其进行测试并自行给您结果,但是根据我尝试访问该值的特定事件(viewDidLoad、viewWillAppear、viewDidAppear)经历了类似的行为(未分配值)。

【讨论】:

你是因为我在消息后将值分配给 pushViewController。我错误地假设直接设置标签以这种方式工作,因此传递字符串也是如此。谢谢。

以上是关于将字符串传递给模态视图的主要内容,如果未能解决你的问题,请参考以下文章

将属性从模态视图控制器传递给父级

通过 prepareForSegue 传递 NSString - Swift

将信息传递给模态视图控制器

将值传递给模态 UIViewController - Swift

将 joomla 文章 ID 传递给模态 iframe 表单

使用自定义视图将字符串数组传递给另一个活动