zoukankan      html  css  js  c++  java
  • ios-屏幕适配(代码)

    由于第一个项目中98%的界面都用到UITableView,所以适配仅判断此。知道手工敲代码的繁复,遂传一部分,如果有更优的方法,欢迎提出。

    如下图,图中提到的宏定义是在prefix.pch预编绎文件里定义好的全局变量。

     1 //设备判断
     2 #define DEVICE_IS_IPHONE5 ([[UIScreen mainScreen] bounds].size.height == 568)
     3 #define IOS7_OR_LATER  ([[[UIDevice currentDevice] systemVersion] compare:@"7.0"] != NSOrderedAscending)
     4 
     5 //设备Size
     6 #define Screen_height [[UIScreen mainScreen] bounds].size.height
     7 #define Screen_width [[UIScreen mainScreen] bounds].size.width
     8 #define Page_height (IOS7_OR_LATER ? Screen_height : (Screen_height - 20))
     9 
    10 //appdele
    11 #define AppDelegateObj [[UIApplication sharedApplication] delegate]
    12 
    13 //通用高度
    14 #define StatusHeight (IOS7_OR_LATER ? 20 : 0) //状态栏高度
    15 #define TopBarHeight 44  //顶部导航高度
    16 #define BottomBarHeight  47 //底部导航高度
    17 
    18 //设置背景色
    19 #define Screen_BackGround [UIColor colorWithRed:240.0/250 green:239.0/250 blue:245.0/250 alpha:1.0]
    View Code

     1 UITableView* tableView = nil;
     2     if (IPHONE5)
     3     {
     4         if (sysio71)
     5         {
     6             tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT - StatusHeight - TopBarHeight) style:UITableViewStylePlain];
     7         }else if (sysio7)
     8         {
     9             tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT - StatusHeight - TopBarHeight) style:UITableViewStylePlain];
    10         }
    11         else
    12             tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT - StatusHeight - TopBarHeight - 20) style:UITableViewStylePlain];
    13     }
    14     else
    15     {
    16         if (sysio71)
    17         {
    18             tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT - StatusHeight - TopBarHeight ) style:UITableViewStylePlain];
    19         }
    20         else if (sysio7)
    21         {
    22             tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT - StatusHeight - TopBarHeight ) style:UITableViewStylePlain];
    23         }
    24         else
    25             tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT - StatusHeight - TopBarHeight - 20) style:UITableViewStylePlain];
    26     }
    View Code  
  • 相关阅读:
    又见JavaWeb的中文乱码
    Java 中文字符串编码之GBK转UTF-8
    关于Java项目打包
    FreeSWITCH无法读取wav文件
    CentOS 7 最小化安装的网络配置
    虚拟机无法使用网卡桥接模式
    阿里云建站流程
    Spring MVC无法获取ajax POST的参数和值
    Mysql ERROR 1064 (42000)
    eclipse创建java类时自动添加注释
  • 原文地址:https://www.cnblogs.com/xm5mao/p/3967074.html
Copyright © 2011-2022 走看看