1.如下图见一个单视图项目,删除ViewController,然后再如下图新建一些group。和class。class继承的类在图上已经标注,将AppDelegate.h/m和storyboard拖到我建立的一个main文件夹中,(因为oc程序之间没有包结构的约束。所以随便建自己喜欢的文件夹,放自己想放的文件)
2,想第一个程序那样设置,设置程序的RootViewController。
在AppDelegate中的代码
#import "AppDelegate.h"
#import "LYTMyViewController.h"
@interface AppDelegate ()
@end
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
self.window.rootViewController = [[LYTMyViewController alloc] init];
return YES;
}
3.在ViewController中的代码
//
// LYTMyViewController.m
// OneMVCProject
//
// Created by lyt on 15/4/4.
// Copyright (c) 2015年 lyt. All rights reserved.
//
#import "LYTMyViewController.h"
//导入我们的视图
#import "LYTMyView.h"
@implementation LYTMyViewController
-(void)viewDidLoad
{
[super viewDidLoad];
self.view.backgroundColor = [UIColor whiteColor];
LYTMyView *myView = [[LYTMyView alloc] init];
[self.view addSubview:myView];
}
@end
4.在MyView.h中设置当前视图所拥有的视图
//
// LYTMyView.h
// OneMVCProject
//
// Created by lyt on 15/4/4.
// Copyright (c) 2015年 lyt. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface LYTMyView : UIView
@property(nonatomic,strong) UILabel *textLable;
@end
MyView.m文件中初始化view中的视图。
//
// LYTMyView.m
// OneMVCProject
//
// Created by lyt on 15/4/4.
// Copyright (c) 2015年 lyt. All rights reserved.
//
#import "LYTMyView.h"
//将模型导入视图。为视图添加属性。
#import "LYTMyModel.h"
@implementation LYTMyView
- (instancetype)init
{
self = [super init];
if (self) {
LYTMyModel *myModel = [[LYTMyModel alloc] init];
self.textLable = [[UILabel alloc] init];
self.textLable.frame = CGRectMake(100, 100, 300, 100);
self.textLable.text = myModel.str;
//将view中的子视图加入到View中。
[self addSubview:_textLable];
}
return self;
}
@end
5.模拟一个model模型,并初始化
.h文件
//
// LYTMyModel.h
// OneMVCProject
//
// Created by lyt on 15/4/4.
// Copyright (c) 2015年 lyt. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface LYTMyModel : NSObject
@property(nonatomic,copy) NSString *str;
@end
.m文件
//
// LYTMyModel.m
// OneMVCProject
//
// Created by lyt on 15/4/4.
// Copyright (c) 2015年 lyt. All rights reserved.
//
#import "LYTMyModel.h"
@implementation LYTMyModel
- (instancetype)init
{
self = [super init];
if (self) {
self.str = @"this is a MVC model Project";
}
return self;
}
@end
这就是一个比较简单的MVC的设计模式。哈哈。。。只要有这样的一个框架,以后就可以随意添加自己的模块了。
运行结果