【问题标题】:how to view different detailView of selected row on iOS Master Detail如何在iOS Master Detail上查看所选行的不同detailView
【发布时间】:2012-10-24 18:13:16
【问题描述】:

我正在开发主详细信息应用程序,我想查看所选行的不同 detailView。为了明确我的问题,我在这里举个例子:

主细节


细节 1 >


细节 2 >


目标是当我按下 [detail 1 >] 时,给我详细信息 1 行的详细视图。然后按 [detail 2] 给出详细信息 2 行的自我详细信息视图。我认为这很清楚。如果可能,还可以在每个细节视图中添加自定义按钮和图像!!

我们将不胜感激。

【问题讨论】:

  • 我已经尝试切换方法细节 1 案例 0 和细节 2 案例 1 但没有改变任何东西我仍然得到细节 2 与细节 1 相同?
  • 你不觉得switch的说法不正确吗?
  • 我认为获取一些代码会很有用。你能展示一下你目前所拥有的吗?

标签: iphone objective-c xcode4.5 master-detail ios5


【解决方案1】:
DetailViewController *detailView = [[DetailViewController alloc]init];
detailView.tagValue = 1;
[self.navigationController pushViewController:detailView animated:YES];

您可以向detailView 发送标签值,并根据此值显示不同的视图。 就像在 detailView 的 .h 类中创建一个像 @property(nonatomic)NSInteger tagValue; 这样的属性并在 .m 类中合成它。现在您可以像这样从大师班发送tagValue

现在您可以在DetailViewController 中检查tagValue 的值,并在此基础上创建您的视图。 我想现在很清楚了。但是,如果您仍然有任何问题,您可以编写您的代码。

【讨论】:

  • 还是同样的问题。但是使用您的代码让我返回 2 次并给我一个错误推送到 detailView:012-10-25 00:38:36.344 MasterDetail[9607:11303] 嵌套推送动画可能导致导航栏损坏 2012-10-25 00: 38:36.710 MasterDetail[9607:11303] 在意外状态下完成导航转换。导航栏子视图树可能会损坏。 2012-10-25 00:38:36.716 MasterDetail[9607:11303] 对 的开始/结束外观转换的不平衡调用。
  • DetailViewController *detailView = [[DetailViewController alloc]init]; detailView.tagValue = 1; [self.navigationController pushViewController:detailView Animation:YES];
【解决方案2】:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
 
{
    DetailViewController *detailView = [[DetailViewController alloc]init];
     
    detailView.tagValue = indexPath.row;
     
    [self.navigationController pushViewController:detailView animated:YES];
}

我们需要给 detailView.tagValue = indexPath.row;

【讨论】:

    猜你喜欢
    • 2014-12-31
    • 1970-01-01
    • 2012-03-24
    • 2015-11-11
    • 2020-11-04
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 2014-07-24
    相关资源
    最近更新 更多