Как изменить цвет границы сгруппированного UiableView

StackOverflow https://stackoverflow.com/questions/2612606

  •  25-09-2019
  •  | 
  •  

Вопрос

Это касается iPhoneos-SDK-3.2

Я испытываю трудности изменить цвет границы сгруппированного UiableView. Я могу изменить цвет фона клеток, цвет сепаратора, цвет текста, вполне легко сейчас, и закругленные углы клиппируются правильно, даже когда вы подчеркиваются любыми цветами, которые я выбрал. Однако окружающая граница остается беганно серой, несмотря на многие разные попытки.

Я прочитал все соответствующие сообщения, которые я могу найти через Google, не говоря уже о стойке. Я видел героическое решение PITA Mike Akers для UiableViewCell - эта проблема решается для iPhoneOS 3.0, и она не помогла мне с границей.

Я попробовал как программное, так и на основе XIB, и оба обеспечивают те же результаты.

Я поделись программной версией ниже:

У меня есть подкласс UIViewController, а не подкласс UiableViewController, который будет действовать в качестве делегата UiableView - я выбрал этот маршрут, когда я кодирующую на iPad и UiableViewController, как сообщается, берет на себя все экран. Метод LoadView My UiviewController Subclass:

- (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];
}
Это было полезно?

Решение

Я нашел решение. Такое поведение, по-видимому, является iPhoneOS 3.2, специфичным, как Apple добавил свойство BackgroundView для UiableView в iPhoneos 3.2.

Я попробовал [MyTableView.backgroundView RemoveFromsuperview] и UiableView просто заменил его другим.

Вместо этого мое решение было добавить:

myTableView.backgroundView.hidden = YES;

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top