zoukankan      html  css  js  c++  java
  • iphone 手机屏幕和UIView和UIWindowde 的主要的区别

           在iPhone5之前的iphone1,2,3,3s,4,4s都是320x480 

           iPhone5和5s的屏幕是320x568

           iphone6的屏幕是375x667

          iPhone6Plus的414x736

    如何让控件居中(以iPhone6为例)假设一个控件的大小为150,80,iphone的坐标点为左上顶点,和正常的坐标系正好相反。想要确定一个控件的坐标就的先确定他的左上的顶点。iPhone的长为375如果除2就会到达中轴这时的长度设为a,在把一个控件的长除2这时的控件的长设为b,这时确定了控件的左上顶点的坐标(a-b);   同时宽也是一样的道理 

    在Xcode上是可以获得活动屏幕的大小

    NSLog(@"self.window.Frame %@",NSStringFromCGRect(self.window.frame));用这个方法

    1、UIScreen可以获取设备屏幕的大小。

    1
    2
    3
    4
    5
    6
    7
    // 整个屏幕的大小 {{0, 0}, {320, 480}}
    CGRect bounds = [UIScreen mainScreen].bounds;
    NSLog(@"UIScreen bounds: %@", NSStringFromCGRect(bounds));
     
    // 应用程序窗口大小 {{0, 20}, {320, 460}}
    CGRect applicationFrame = [UIScreen mainScreen].applicationFrame;
    NSLog(@"UIScreen applicationFrame: %@", NSStringFromCGRect(applicationFrame));

    2、UIView对象定义了一个屏幕上的一个矩形区域,同时处理该区域的绘制和触屏事件。
    可以在这个区域内绘制图形和文字,还可以接收用户的操作。一个UIView的实例可以包含和管理若干个子UIView。

    ViewController.m

    1
    2
    3
    4
    5
    6
    7
    - (void)viewDidAppear:(BOOL)animated
    {
        [super viewDidAppear:animated];
        UIView* myView = [[UIView alloc] initWithFrame:CGRectMake(10, 10, 100, 100)];
        myView.backgroundColor=[UIColor redColor];
        [self.view addSubview:myView];
    }

    3、UIWindow对象是所有UIView的根,管理和协调的应用程序的显示
    UIWindow类是UIView的子类,可以看作是特殊的UIView。一般应用程序只有一个UIWindow对象,即使有多个UIWindow对象,也只有一个UIWindow可以接受到用户的触屏事件。

    AppDelegate.m

    1
    2
    3
    4
    5
    6
    7
    8
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
        UIWindow *myWindow = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
        myWindow.backgroundColor=[UIColor whiteColor];
        [myWindow makeKeyAndVisible];
        _window = myWindow;
        returnYES;
    }

      从中可以看的出来window是可以看成iPhone上的大屏幕,整个的屏幕上又很多个UIView,开发者在进行UIView这个区域内的各种编辑在self.window中要加入UIView的对象

      。。。。感谢这位开发者的分享:http://blog.csdn.net/showhilllee/article/details/8454714

       

  • 相关阅读:
    改变UITabbar顶部分割线颜色
    UITableViewCell添加点击时改变字体的颜色、背景、图标
    【转】有了Auto Layout,为什么你还是害怕写UITabelView的自适应布局?
    AFNetworking https自签名证书 -1012 解决方案
    关于AFNetWorking 2.5.4之后版本编译报错问题解决方案
    UIImageView 使图片圆形的方法
    关于使用IQKeyBoardManager键盘还是被遮挡的问题解决方案
    关于ios7 以上版本 view被导航栏遮挡的问题 解决方案
    手动导入第三方工程/类库
    “请不要直接访问超全局$_GET数组”
  • 原文地址:https://www.cnblogs.com/xiangruru/p/4831523.html
Copyright © 2011-2022 走看看