当前位置:  开发笔记 > 编程语言 > 正文

如何更改分组UITableView的边框颜色

如何解决《如何更改分组UITableView的边框颜色》经验,为你挑选了1个好方法。

这涉及iPhoneOS-sdk-3.2

我无法更改分组的UITableView的边框颜色.我可以很容易地改变单元格背景颜色,分隔符颜色,文本颜色,并且正确地修改圆角,即使用我选择的任何颜色突出显示.然而,尽管有许多不同的尝试,但周围的边界仍然是令人愤怒的灰色

我已经阅读了我可以通过Google找到的所有相关帖子,更不用说stackoverflow了.我见过Mike Akers用于UITableViewCell剪辑的英雄PITA解决方案 - 这个问题已经解决了iPhoneOS 3.0并且它对边框没有帮助.

我尝试了基于编程和基于xib的解决方案,并且都提供了相同的结果.

我将分享下面的程序化版本:

我有一个UIViewController子类而不是UITableViewController子类充当UITableView委托 - 我选择了这条路线,因为我在iPad上编码,据说UITableViewController接管了整个屏幕.我的UIViewController子类的loadView方法:

- (void) loadView {
  self.view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
  [self.view release];
  self.view.backgroundColor = [UIColor blackColor];

  // add and configure UITableView                                                                                     
  CGRect tableViewRect = CGRectMake(0., 0., 256., 768.);

  myTableView = [[UITableView alloc] initWithFrame:tableViewRect style:UITableViewStyleGrouped];

  // set the tableview delegate to this object and the datasource to the datasource which has already been set          
  myTableView.delegate = self;
  myTableView.dataSource = self;

  myTableView.sectionIndexMinimumDisplayRowCount = 1;

  myTableView.backgroundColor = [UIColor clearColor];
  myTableView.separatorColor = [UIColor whiteColor];
  myTableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;

  myTableView.opaque = NO;

  // add the table view to our background view                                                                          
  [self.view addSubview:myTableView];
  [myTableView release];
}

ctpenrose.. 5

我找到了解决方案.这种行为似乎确实是iPhoneOS 3.2,因为Apple在iPhoneOS 3.2中为UITableView添加了一个backgroundView属性.

我尝试了[myTableView.backgroundView removeFromSuperView],而UITableView只是将其替换为另一个.

相反,我的解决方案是添加:

myTableView.backgroundView.hidden = YES;



1> ctpenrose..:

我找到了解决方案.这种行为似乎确实是iPhoneOS 3.2,因为Apple在iPhoneOS 3.2中为UITableView添加了一个backgroundView属性.

我尝试了[myTableView.backgroundView removeFromSuperView],而UITableView只是将其替换为另一个.

相反,我的解决方案是添加:

myTableView.backgroundView.hidden = YES;

推荐阅读
手机用户2502851955
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有