适配iOS7之—UITableView和UISearchBar
iOS7中,如果用UITableViewStyleGrouped的话,里面的cell会比原来的拉长了,这样做应该是为了统一和UITableViewStylePlain风格时cell的大小一致,所以改用UITableViewStylePlain后,就没问题了,而且在iOS7中,使用UITableViewStyleGrouped风格时,上面会出现headView,大概占了35个像素,使用UITableViewStyleGrouped风格的朋友们注意了,如下图为使用UITableViewStyleGrouped时的差异:
图1-1
还有就是iOS7下的UITableView增加了一个UITableViewWrapperView子视图,UITableViewCell变成了UITableViewWrapperView的子视图,而在iOS6中,UITableViewCell是UITableView的子视图。
用代码表现出来就是:
|
1
2
3
|
UITableView *tableView = (UITableView *)cell.superview.superview;//in iOS7UITableView *tableView = (UITableView *)cell.superview;//in iOS6 |
如果之前定制cell的时候,用下面代码取tableView的需要做适配了。
|
1
|
UITableView *tableView = (UITableView *)self.superview; |
还有就是现在可以直接设置UITableView的背景颜色了:
|
1
|
_loginTable.backgroundColor = [UIColor redColor]; |
另一个问题就是我使用UISearchBar的时候,Apple在iOS7中也做了调整。如下图:

图1-2
相信很多人在使用UISearchBar的时候,都比较喜欢上面的那种去了背景色的样子,在iOS6中我是使用下面这种方式去除背景色:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
//for iOS6for (UIView *subview in self.search.subviews) { if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) { [subview removeFromSuperview]; break; }} |
而今天突然发现,纳尼,在iOS7中,搜索框消失了,用小伙伴的方法看了一下,原来视图树改变了。如下图:

在iOS7中,UISearchBar的子视图变成一个UIView,所以原来的方法不管用了,但是看了一下文档,在iOS7中新增了一个barTintColor的属性,我们可以设置barTintColor为clearColor,便得到图1-2中的效果。
|
1
2
3
4
5
6
7
|
//for iOS 7if ([self.search respondsToSelector:@selector(barTintColor)]) {[self.search setBarTintColor:[UIColor clearColor]];} |
至此,目前我在适配iOS7的时候,就遇到这两个问题,写出来,分享给大家。
今天看到一个笑话,快笑得不能自已了:
为什么练葵花宝典一定要先自宫?
网友答复:练成神功后,绝对会屌爆了,所以要先防患于未然。O(∩_∩)O~
适配iOS7之—UITableView和UISearchBar的更多相关文章
- 如何让你的App适配iOS7?
随着苹果在2013年9月18日发布iOS7最新的系统以来,iOS各种设备升级到iOS7的数字就已经不断刷新记录.目前据外界统计iOS7设备装机量已经达到2.5亿部,已占iOS设备的64%.由此可见让自 ...
- ios6,ios7,ios7.1下设置UISearchbar的背景色
ios系统升级到7.1后,原来在7.0下显示正常的UISearchbar现在又出现问题了.究其原因,是由于UISearchbar的subview又做修改了. float version = [[[ U ...
- 解决iOS7中UITableView在使用autolayout时layoutSubviews方法导致的crash
近期公司项目上线后,出现了大量的crash,发生在iOS7系统上,和UITableView相关: Auto Layout still required after executing -layoutS ...
- IOS7学习之路二(处理ios6到ios7后UITableView的两个显示问题)
1.在ios6开发的项目,当用ios7的虚拟机显示的时候会出现UINavigationItem遮挡TableView的问题: 下面是对比显示效果: 我的处理方法是: 在UITableViewContr ...
- 通讯录--(适配iOS7/8/9)
导入库#import <AddressBook/AddressBook.h> #import <AddressBookUI/AddressBookUI.h> #pragma m ...
- uitableview 和UISearchBar 下拉提示结合使用
自定cell的代码 餐厅的实体和餐厅对应控件的frame #import <Foundation/Foundation.h> @class RestaurantFrame; @interf ...
- iOS-scrollview及其子类适配iOS7
问题描述: 在iOS7之后如果在导航控制器中所属的字控制器中嵌入scrollview及其子类的视图,当scrollview的尺寸太小的话不会调用返回cell的方法.控制器的嵌套层级结构如下图所示,着重 ...
- 适配ios7
if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) { self.edgesForExtendedLayout = UIR ...
- IOS 启动画面和图标设置(适配IOS7 and Xcode5)
关于IOS程序设置启动画面以及图标的设备目前主要为:IPhone设备 和IPad设备 IPhone启动画面以及图标的设置 目前IPhone的分辨率为:320X480.640X960.640X1136. ...
随机推荐
- 设计模式之序章-UML类图那点事儿
设计模式之序-UML类图那点事儿 序 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐 ...
- python - 接口自动化测试 - TestRegister - 注册接口测试用例
# -*- coding:utf-8 -*- ''' @project: ApiAutoTest @author: Jimmy @file: test_register.py @ide: PyChar ...
- Leetcode 526.优美的排列
优美的排列 假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这个数组为一 ...
- [oldboy-django][4python面试]有关yield那些事
1 yield 在使用send, next时候的区别(举例m = yield 5) 无论send,next首先理解m = yield 5 是将表达式"yield 5 "的结果返回给 ...
- Zookeeper CreateMode
通过CreateMode 可以设置在zookeeper中创建节点的类型,节点类型共有4种: EPHEMERAL:临时节点 EPHEMERAL_SEQUENTIAL:有序的临时节点 PERSISTENT ...
- PAT1032
为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛.现请你根据比赛结果统计出技术最强的那个学校. 输入格式: 输入在第1行给出不超过105的正整数N,即参赛人数.随后N行,每行给出一位 ...
- 【Luogu】P4462异或序列(莫队)
题目链接 观察什么时候x到y之间那一段可以被统计 xorsum[x-1]^xorsum[y]=k xorsum[x-1]=xorsum[y]^k||xorsum[y]=xorsum[x-1]^k 莫队 ...
- PIC单片机之时钟设置
PIC单片机之时钟设置 http://blog.csdn.net/superanters/article/details/8541650 内部时钟和外部时钟? PIC单片机有许多型号可以设置成 用外部 ...
- Markdown语法图解
Markdown语法图解 文章目录 快捷键 基本语法 对字体设置斜体.粗体.删除线 分级标题 链接 分割线 代码块 引用 列表 表格 常用技巧 换行 缩进字符 如何打出一些特殊符号 字体.字号与颜色 ...
- [hdu5307] He is Flying [FFT+数学推导]
题面 传送门 思路 看到这道题,我的第一想法是前缀和瞎搞,说不定能$O\left(n\right)$? 事实证明我的确是瞎扯...... 题目中的提示 这道题的数据中告诉了我们: $sum\left( ...