关键字: application view delegate insert
学习了一个multiview的例子,下面是一些体会:
每一个view由下面三个组成
the view controller, the nib, and asubclass ofUIView.
multiview 和MFC的多文档结构类似,本质都是一种设计的流程,要熟悉这个流程,熟悉基本的API的架构。
一般流程先集成一个application的delegate,然后在application的函数里添加初始化view的代码,由于objc很喜欢使用delegate,那就先初始化一个view的delegate,记得把NIB也load进去。
另外view之间还有包含关系,可以通过下面的代码实现:
[self.view insertSubview:self.sub_view_1.view atIndex:0];
#import <UIKit/UIKit.h>
UIKit是iOS(iPad/iPhone 运行的操作系统)上的AppKit 的变种,用于为iOS 应用程序提供界面对象和控制器。与AppKit 类似,UIKit 框架有UIResponder,也采用事件(UIEvent类)机制。另外,iOS上的应用程序都是一个UIApplication 实例。
// 下面是UIKit的关系图
interface JSAppDelegate : UIResponder <UIApplicationDelegate>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// added by jun
self.view1_ = [[JSViewController1 alloc] initWithNibName:@"JSViewController1" bundle:nil];
UIView* switch_view = self.view1_.view;
CGRect switch_view_frame = switch_view.frame;
switch_view_frame.origin.y += [UIApplication sharedApplication].statusBarFrame.size.height;
switch_view.frame = switch_view_frame;
[self.window addSubview:switch_view];
。。。
}