gpt4 book ai didi

ios - 带有自定义单元格的 UITableView 在 iOS 6 上绘制良好,但在 iOS 7 中完全白色

转载 作者:可可西里 更新时间:2023-11-01 03:57:03 24 4
gpt4 key购买 nike

我正在 Xcode 5 上构建一个面向 iOS 6+ 的应用。

我在使用自定义单元格构建表格 View 时遇到问题。有趣的是,在我今天更新到 Xcode 5.0.2 之前它一直运行良好(我不知道发生了什么变化)。当我弄乱了 iOS 7 SDK 附带的白色导航栏样式(我也不知道它们是如何相互链接的)时,我的表格 View 也绘制了纯白色(下面的屏幕截图)。无论如何,当我从我的代码中删除灯状态栏选项时,我的 TableView 过去常常正常绘制,尽管我有黑色状态栏。今天,在安装 Xcode 5.0.2 之后,我在没有更改任何代码的情况下构建了同一个项目,我的表格 View 现在在 iOS 7(设备和模拟器)上绘制为纯白色。当我切换到 iOS 6 时,它显示完美(设备和模拟器)。我试过清理构建文件夹、清理派生数据文件夹、重新启动 Xcode/模拟器/设备,但没有任何改变。此外,该应用程序开始显示白色状态栏,这在更新 Xcode 之前不会出现。我知道它们应该无关紧要,但我现在很难开发我的应用程序。单元格接收所有触摸事件,表格 View 确实滚动,我在输出端获得所有 NSLog,向下滚动时我可以看到滚动条。它只是不画。我的自定义单元格中有自定义 drawRect: 代码。看到后UITableViewCell custom CG drawing iOS 7subclassed UITableViewCell - backgroundView covers up anything I do in drawRect我注释掉了那段代码,但没有用。这是我在 iOS 7 上得到的(灰色的选定单元格):

enter image description here

这是 iOS 6 上的同一个应用(为了保护隐私,文本/图像模糊):

enter image description here

这是 -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 的代码:

MyFriendViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"friendTableCell"];
if(!cell){
cell = [[[NSBundle mainBundle] loadNibNamed:@"MyFriendViewCell" owner:self options:nil] lastObject];
}
/* some code that sets text fields/images */
[...]
return cell;

我有一个 XIB 文件(只有一个对象,我的自定义单元格类)和一个对应于该单元格的类。我在一开始就注册了我的手机:

[self.tableView registerNib:[UINib nibWithNibName:@"MyFriendViewCell" bundle:[NSBundle mainBundle]] forCellReuseIdentifier:@"friendTableCell"];

我已经检查了方法中的 cell,dequeue 无论如何都不会返回 nil

更新:我还意识到,我的应用在 iOS 6(即使它运行正常)和 iOS 7 上的此屏幕上空闲时使用 100% 的 CPU。

重要:问题已得到解答,但对于任何对 drawRect: 感到疑惑的人,问题与此无关,我仍然使用自定义 drawRect: 并且效果很好。

最佳答案

setcontentview backgroundColorclear color

关于ios - 带有自定义单元格的 UITableView 在 iOS 6 上绘制良好,但在 iOS 7 中完全白色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20132042/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com