1

我正在构建我的第一个应用程序而不使用故事板或笔尖。我想从表格视图推送到详细视图,并且似乎找不到任何资源来显示如何在没有界面生成器的情况下执行此操作。我的表格视图控制器有一个图片、标题和副标题,我希望将这些都传递给细节视图,但我希望细节视图也有一个文本描述。到目前为止,我只能构建我的表格视图控制器。没有笔尖我不知道怎么做剩下的。如何推送到详细视图?如何格式化详细视图?有没有人有我可以看的任何资源或示例代码?

4

2 回答 2

0

制作 UIViewController 的自定义子类,例如 DetailViewController。要对其进行格式化,请在 -[DetailViewController viewDidLoad] 中编写代码。

因此,在 DetailViewController.m 中,您可以编写:

- (void)viewDidLoad {
    [super viewDidLoad];

    // Add a label with some text.
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 10, 100, 40)];
    label.text = @"Some text";
    [self.view addSubview:label];
}

注意:在代码中分隔上述子视图可能具有挑战性。Interface Builder 对此有所帮助。一种想法是使用 Interface Builder 将所有内容分开,然后从 Interface Builder 获取坐标。您也可以使用 nib2objc。

然后,在表视图控制器的实现 (.m) 文件的 -tableView:didSelectRowAtIndexPath: 中,您可以编写:

DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:nil bundle:nil];
[self.navigationController pushViewController:detailViewController animated:YES];
于 2013-03-20T02:17:31.553 回答
0

如果未实现 navigationController,self.navigationController 将不起作用。我发现新方法 presentViewController 有效。

DetailViewController *detailVC = [[DetailViewController alloc]initWithNibName:nil bundle:nil];
detailVC.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentViewController:detailVC animated:YES completion:nil];
于 2017-02-12T06:37:09.943 回答