`
啸笑天
  • 浏览: 3462697 次
  • 性别: Icon_minigender_1
  • 来自: China
社区版块
存档分类
最新评论

iOS5&iOS6 Grouped类型UITableView背景色设置问题

 
阅读更多

刚接触ios的时候已经ios6了,遇到一个兼容ios5和ios6的问题。

在iOS6中,对于UITableViewStyleGrouped类型的UITableView,通过直接修改继承自UIViewbackgroundColor属性的方法来设置UITableView的背景色无效。

比如,在AppDelegate中设置窗口的颜色为淡黄色

self.window.backgroundColor = [UIColor colorWithRed:1.00f green:0.91f blue:0.82f alpha:1.00f];

在一个UIViewController的viewDidLoad方法中增加一个UITableView,设置其backgroundColor为透明色。

UITableView *tableView = [[UITableView alloc] initWithFrame:self.view.bounds style: UITableViewStyleGrouped];
tableView.dataSource = self;
tableView.delegate = self;
tableView.backgroundColor = [UIColor clearColor];
[self.view addSubview:tableView];

 

那么在iOS5及之前版本的模拟器上,运行的效果如下:


 

因为UITableView的背景色设为了[UIColor clearColor],所以tableView的背景色为UIWindow的颜色。
但是在iOS6模拟器和运行iOS6设备上的显示效果如下:


 

此时UITableView的背景色为默认的灰色,我们通过backgroundColor设置的背景色无效。

这个问题只在UITableViewStyleGrouped类型的UITableView中出现,UITableViewStylePlain类型的tableView没有这个问题,因为Group类型的TableView有个backgroundView,而plain类型的TableView没有(backgroundView属性为nil),目前看来,这可能因为backgroundView在中间挡住了背景色,这是否iOS6的bug还待确认。关于backgroundView,还可以参考下这里iPad Table backgroundView

目前对于这个问题的解决方法是将Group类型的tableView的backgroundView设为一个新的空白View或简单的设置为nil.如下

tableView.backgroundView = [[UIView alloc]init];
tableView.backgroundColor = [UIColor clearColor];

tableView.backgroundView = nil;
tableView.backgroundColor = [UIColor clearColor];

 

参考:
UITableView clearColor background not working
iPad Table backgroundView

  • 大小: 9.9 KB
  • 大小: 13.6 KB
分享到:
评论

相关推荐

    iOS-使用表格视图UITableView

    在iOS开发中,UITableView是一种非常重要的视图组件,它用于展示数据列表,广泛应用于各种应用场景,如联系人列表、消息列表等。这个“iOS-使用表格视图UITableView”项目可能是为了帮助开发者熟悉如何在实际应用中...

    iOS UITableView分组示例

    实现了简单的分组tableView,显示的是省份-城市关联信息,测试数据使用plist属性文件保存。 另外实现了类似iPhone通讯录根据字母快速索引联系人的功能,这里是点击右侧的省份名称,快速定位到其下辖的城市列表。

    详解iOS开发中UITableview cell 顶部空白的多种设置方法

    在iOS开发中,`UITableView` 是一个非常常用且重要的组件,用于展示列表数据。然而,在实际开发过程中,我们经常会遇到`UITableViewCell`顶部出现空白的问题,这可能会对用户体验造成不良影响。本文将详细介绍几种...

    iOS开发UI篇—UITableview控件简单介绍.docx编程资料

    ### iOS开发UI篇—UITableView控件详细介绍 #### 一、基本介绍 在iOS应用程序开发过程中,经常需要展示表格形式的数据,而`UITableView`是实现这一功能的重要组件之一。`UITableView`继承自`UIScrollView`,因此它...

    IOS TableViewGrouped 例子

    在iOS开发中,UITableView是一种非常重要的视图组件,它用于展示列表数据,广泛应用于应用的主界面、设置页面等场景。本示例“IOS TableView Grouped”主要关注的是分组表格视图(UITableViewStyleGrouped),它以...

    UITableView与UITableViewCell

    在iOS开发中,UITableView是用于显示数据的一种常见控件,它可以以列表的形式展示信息,而UITableViewCell则是构成这个列表的基本单元,每一行数据对应一个单元格。以下是对UITableView和UITableViewCell的详细解析...

    UITableView

    在iOS应用中,UITableView常用于创建各种类型的数据列表,如联系人列表、邮件收件箱等。它允许用户滚动浏览多行数据,并可以进行交互操作,如点击选择、滑动删除等。 首先,我们需要了解UITableView的基本组成。...

    ios-常用的taBleView样式.zip

    Plain样式呈现单列无分组的列表,而Grouped样式则将内容分组显示,每组有独立的背景色,更适合作为章节或类别划分的数据展示。 在通讯录应用中,我们经常会看到一个边栏索引,允许用户快速滚动到以特定字母开头的...

    iOS分组表示例

    在iOS开发中,分组表(Grouped Table View)是一种常见的用户界面元素,它将数据组织成多个分段,每个分段包含一个或多个行。这样的布局有助于提高用户体验,通过清晰地划分不同类别的信息,使得用户能更容易地浏览...

    IOS应用源码之设置不同风格的table view样式 .rar

    Plain样式创建的是无分组的连续列表,而Grouped样式则将内容分组显示,每组有自己的背景色。 2. 自定义Cell: - UITableViewCell是默认的Cell类型,但我们可以创建自定义的UITableViewCell子类来添加额外的UI元素...

    IOS应用源码——设置不同风格的table view样式.rar

    在iOS开发中,UITableView是构建用户界面的重要组件,它用于展示列表数据,常见的有消息列表、设置列表等。本资源“IOS应用源码——设置不同风格的table view样式.rar”显然是一个关于如何自定义和美化UITableView...

    IOS应用源码——设置不同风格的table view样式.zip

    - **背景色**:可以使用`tableView.backgroundColor`来改变TableView的背景颜色,或者设置背景图片。 - **分割线样式**:通过`tableView.separatorStyle`可更改分割线的样式,如单行、无边框等。 - **行高**:`...

    IOS应用源码Demo-设置不同风格的table view样式-毕设学习.zip

    本项目"IOS应用源码Demo-设置不同风格的table view样式-毕设学习.zip"显然是一个教学示例,旨在帮助学生理解并掌握如何在iOS应用中定制不同风格的Table View。以下是关于Table View样式设置的一些关键知识点: 1. *...

    ios开发资料

    - 探索不同类型的TableViewCell,如Grouped风格,自定义Header和Footer等。 - 学习如何通过AutoLayout和Size Classes来适配不同屏幕尺寸。 - 研究如何结合Core Data或网络请求动态加载数据到列表中。 总之,iOS...

    UI拓展与实践(UITableView).pdf

    UITableView负责展示滚动列表数据,类似于iOS中许多应用的设置列表和联系人列表。它基于UIScrollView,因此能够支持滑动浏览大量数据,但在滚动性能上进行了优化,更加适合处理大量数据。 UITableView分为几种类型...

    斯坦福大学iOS开发教程2011年秋Lecture 9

    斯坦福大学iOS开发教程2011年秋季的第九讲主要聚焦于UITableView的深度解析与应用,这是一个在iOS开发中至关重要的组件,用于展示数据列表或表格。此课程详细介绍了UITableView的各种特性和如何利用它来构建高效且...

    ios tableview 源码例子(31个)

    在iOS开发中,UITableView是用于展示数据集合的重要控件,常用于新闻列表、联系人、设置界面等场景。本资源提供了31个关于UITableView的源码示例,涵盖了各种常见和复杂的实现方式,旨在帮助开发者深入理解并熟练...

    UITableView-Swift

    在iOS应用开发中,`UITableView` 是一个至关重要的组件,用于展示列表或表格数据。它在Swift中的实现提供了丰富的功能和灵活性。本项目"UITableView-Swift"专注于讲解如何使用Swift语言有效地创建和管理`UITableView...

    ios 表格样式实现,类似课程表,时间安排表

    1. **设置UITableView样式**:默认情况下,UITableView有两种样式:Plain和Grouped。在这个案例中,我们可能需要使用Plain样式,因为它允许创建无分组的连续单元格,更接近课程表的布局。 2. **自定义...

Global site tag (gtag.js) - Google Analytics