我一直致力于编写一个简单的程序,该程序将在 MVC 模型中显示用户信息。当所有数据都在 View Controller 上时,应用程序运行良好,但是,当尝试将数据移动到 Profile 模型时,应用程序将成功构建,但是不会显示任何信息。这是我现在正在使用的代码。
配置文件视图控制器标头:
DefaultProfileViewController.h
#import <UIKit/UIKit.h>
#import "Profile.h"
@interface DefaultProfileViewController : UIViewController
@property (strong, nonatomic) IBOutlet UILabel *fullNameLabel;
@property (nonatomic, strong) Profile *profile;
@end
配置文件视图控制器实现
#import "DefaultProfileViewController.h"
@class Profile;
@interface DefaultProfileViewController ()
@end
@implementation DefaultProfileViewController
@synthesize profile = _profile;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
_fullNameLabel.text = _profile.fullName;
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
Profile 模型标头
#import <Foundation/Foundation.h>
@interface Profile : NSObject
@property (nonatomic, copy) NSString *fullName;
- (void)loadProfile:(NSString *)fullName;
@end
和 Profile 模型实现
#import "Profile.h"
@implementation Profile
@synthesize fullName = _fullName;
- (void)loadProfile:(NSString *)fullName
{
_fullName = @"Full Name";
}
@end
如前所述,如果在控制器中使用 _fullName = @"Full Name" 部分,这没有问题,并且文本 Full Name 将显示在模拟器中。如果使用 Profile 模型,将构建应用程序,不会出现错误或警告,但不会显示任何信息。我确信我忽略了一些非常简单的东西,所以任何帮助将不胜感激。谢谢。