这个是AppDelegate.m:
#import "AppDelegate.h"
#import "BNRHypnosisView.h"
#import "ViewController.h"
@interface AppDelegate ()
@end
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// 第一个矩形
CGRect firstFrame = CGRectMake(160, 240, 100, 150);
BNRHypnosisView *firstView = [[BNRHypnosisView alloc] initWithFrame:firstFrame];
firstView.backgroundColor = [UIColor blueColor];
[self.window addSubview:firstView];
// 第二个矩形
CGRect secondFrame = CGRectMake(20, 30, 50, 50);
BNRHypnosisView *secondView = [[BNRHypnosisView alloc] initWithFrame:secondFrame];
secondView.backgroundColor = [UIColor blueColor];
[self.window addSubview:secondView];
ViewController *VC =[[ViewController alloc] init];
self.window.rootViewController = VC;
self.window.backgroundColor = [UIColor redColor];
[self.window makeKeyAndVisible];
return YES;
}
...
ViewController.h/m/xib中的内容是模板默认提供的。
BNRHypnosisView.h/m中没有变量的声明和方法的实现(BNRHypnosisView继承自UIView)。
最后运行在虚拟机上显示的是一片白色。
解决方案:80分
原因是你添加了vc在window上 vc本身的view盖住了你的两个uiview 而且vc是全屏 把你window也遮住所以看不到红色