花了好几个小时试图解决这个问题之后,我想我已尽力而为,我在这里寻求帮助:)
我在UINavigationController
中有3行UITableView
,我可以设置三个单元格的背景但其他空单元格的颜色不同(我只是不明白它需要那种颜色!)
我试图设置UITableView
背景颜色,但是没有办法做到这一点,它永远不会改变:我哪里错了?因为我必须犯错。
以下是我写的代码。
您如何更改剩余的空单元格或修复UITableView
背景颜色?
…
[[[tabBarController.viewControllers objectAtIndex:4]tabBarItem]setTitle:@"Settings"];
[[[tabBarController.viewControllers objectAtIndex:5]tabBarItem]setTitle:@"Hazards"];
[[[tabBarController.viewControllers objectAtIndex:6]tabBarItem]setTitle:@"Beaufort Scale"];
…
UIViewController *tabBarMore = [tabBarController.moreNavigationController.viewControllers objectAtIndex:0];
[tabBarMore.navigationController.navigationBar setBarTintColor:[UIColor colorWithRed:3.0/255.0 green:30.0/255.0 blue:100.0/255.0 alpha:1.0]];
NSDictionary *textAttributes = [NSDictionary dictionaryWithObjectsAndKeys:
[UIColor whiteColor],NSForegroundColorAttributeName,
nil];
tabBarMore.navigationController.navigationBar.titleTextAttributes = textAttributes;
tabBarMore.navigationController.navigationBar.topItem.title = @"More";
UITableView *moreTableView = (UITableView *)tabBarController.moreNavigationController.topViewController.view;
int n = (int)[((UITableView *)tabBarMore.view) numberOfRowsInSection:0];
for (int i = 0; i < n; i++)
{
UITableViewCell *cell = [((UITableView *)tabBarMore.view) cellForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:0]];
[cell setBackgroundColor:[UIColor colorWithRed:20.0/255.0 green:41.0/255.0 blue:97.0/255.0 alpha:1]];
static NSString *cellId = @"Cell";
cell = [((UITableView *)tabBarMore.view) dequeueReusableCellWithIdentifier:cellId];
}
答案 0 :(得分:0)
定义静态单元格后设置背景。