当前位置: 代码迷 >> Iphone >> [ocUI日记]UIwindow跟UIview
  详细解决方案

[ocUI日记]UIwindow跟UIview

热度:124   发布时间:2016-04-25 05:38:34.0
[ocUI日记]UIwindow和UIview

在现版本的xcode中 xcode已经为我们创建好了主window和主view,但对于初学者的我们这并不是一件好事。

接下来我就先为大家介绍一下如何自己创建一个window并且设置主view

1.首先将下图中选中的文件删除

2.按照下图中的标号,将第四步中的main删去 就可以了

3.我们进入AppDelegate.m中的

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法 重写

1     //第一步创建window并进行初始化2     self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];3     //第二步设置此窗口为主窗口并显示出来4     [self.window makeKeyAndVisible];5     //第三步创建一个初始化好了的视图控制器(注意导入头文件)6     ViewController *viewcontroller = [[ViewController alloc]init];7     //第四步设置窗口的跟视图控制器8     self.window.rootViewController = viewcontroller;

做到这里,我们运行模拟器发现还是什么都没有 完全一片黑

这是因为默认的view的背景颜色是clearcolor(clearcolor是与透明有区别的:clearcolor确实存在那里,但是看不见,就如同玻璃一半)

为此我们要给view设置背景颜色  此时模拟器才会有一个可见的界面

 

 

接下来就来讲解UIView

 1     //给主view设置 背景颜色 2     self.view.backgroundColor = [UIColor whiteColor]; 3      4     //创建一个view并进行显示必须要进行以下四个个步骤 5     // 1.创建view 6     UIView *view1 = [[UIView alloc]init]; 7     // 2.设置view的frame(用到了CGRectMake方法前面两个数是距离原点的(左上角)水平和垂直距离  后面两个数 是view的长和宽 8     view1.frame = CGRectMake(10, 10, 200, 200) ; 9     // 3.设置view的背景颜色10     view1.backgroundColor = [UIColor blackColor];11     // 4.添加view12     [self.view addSubview:view1];

上面时view的基础用法,下面为大家介绍其他的一些常用用法

 1     //设置视图的标签  默认是0 2     view1.tag = 1; 3     //是否响应交互 (触摸)默认是no 4     view1.userInteractionEnabled = NO; 5      //将子视图中标签为1的视图赋值给一个其他的视图  原有的视图会发生变化 6     UIView *view2 = [self.view viewWithTag:1]; 7     //从父视图上删除自己 8     [view2 removeFromSuperview]; 9     10     11     12     //添加插入方法13     //在第几层添加一个视图   第一次添加的是第0层 以后每次添加累计加一14     //在view的第0层插入一个子视图15     [self.view insertSubview:view2 atIndex:0];16     //将view1子视图添加到view2子视图下  view2必须是存在于view中的17     [self.view insertSubview:view1 belowSubview:view2];18     //将view1子视图添加到view2子视图下  view2必须是存在于view中的19     [self.view insertSubview:view1 aboveSubview:view2];20     21     //设置透明度0到1之间   会影响子视图22     view1.alpha = 0.2;23     //设置可见性   会影响子视图24     view1.hidden = YES;

 

 

这就是今天全部内容,大家有疑问的话可以和我交流并讨论,为会在第一时间答复大家。