我这里有一个应用程序,要求3个字段的用户输入。输入3个字段后,它们将显示在自定义单元格内的视图控制器中。您可以根据需要添加任意数量的这些事件。然后,您可以选择单击事件单元格以在新视图控制器中显示有关该特定事件的信息。出于某种原因,我输入的事件的详细信息根本没有显示出来。我只是得到一个空白的控制器屏幕。我似乎无法弄清楚为什么,但我认为我已经在此控制器中正确实现了代码。是否与我创建新的Event对象“theEvent”有关?
以下是我的一些代码(完整项目将在下面链接):
完整项目:删除了完整项目链接
FinalDetailViewController.h
#import <UIKit/UIKit.h>
@class Event;
@interface FinalDetailViewController : UITableViewController
@property (strong, nonatomic) id detailItem;
@property (strong, nonatomic) Event *event;
@property (weak, nonatomic) IBOutlet UILabel *detailLabel;
@property (weak, nonatomic) IBOutlet UILabel *locationLabel;
@property (weak, nonatomic) IBOutlet UILabel *dateTimeLabel;
@end
FinalDetailViewController.m
#import "FinalDetailViewController.h"
#import "Event.h"
@interface FinalDetailViewController ()
- (void)configureView;
@end
@implementation FinalDetailViewController
#pragma mark - Managing the detail item
- (void)configureView
{
Event *theEvent = self.event;
static NSDateFormatter *formatter = nil;
if (formatter == nil) {
formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"CCCC, MMMM dd, yyyy hh:mm a"];
}
if (theEvent) {
self.detailLabel.text = theEvent.detail;
self.locationLabel.text = theEvent.location;
self.dateTimeLabel.text = [formatter stringFromDate:(NSDate *)theEvent.date];
}
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self configureView];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
答案 0 :(得分:0)
看起来你打算让FinalDetailViewController的表成为静态表视图(因为你要在标签上做出口,你只能在静态表中做)。将表格视图更改为静态单元格,它应该可以工作。