1

我正在尝试更改 InAppSettingKit 视图控制器的背景颜色。

我已经尝试子类化和覆盖 cellForRowAtIndexPath:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell *cell = [super tableView:tableView cellForRowAtIndexPath:indexPath];
    cell.textLabel.backgroundColor = [UIColor redColor];
    cell.detailTextLabel.backgroundColor = [UIColor redColor];
    return cell;
}

我尝试为 UIColor 创建一个类别:

+ (UIColor *)groupTableViewBackgroundColor {
    return [UIColor redColor];
}

无论我尝试什么,模拟器都会显示正确的(预期的)行为,但我的 iPhone 会显示默认的组表背景。

关于如何解决这个问题的任何想法?也许这是我在我的应用程序委托中创建我的 InAppSettingsViewController 实例的方式......?

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    IASKAppSettingsViewController *iaskvc = [[IASKAppSettingsViewController alloc] init];
    i = [UIImage imageNamed:@"20-gear-2.png"];
    [[iaskvc tabBarItem] setImage:i];
    [[iaskvc tabBarItem] setTitle:@"Settings"];

    // Create the Toolbar
    UITabBarController *tabBarController = [[UITabBarController alloc] init];
    NSArray *viewControllers = [NSArray arrayWithObjects:iaskvc, nil];
    [tabBarController setViewControllers:viewControllers];

    [[self window] setRootViewController:tabBarController];
    [self.window makeKeyAndVisible];
    return YES;
}

XCode:版本 4.5.2 (4G2008a) iOS 部署目标:5.1 iPhone 上的 iOS:6.0.1 (10A523)

模拟器 - 预期 iPhone——自定义不起作用

4

1 回答 1

2

好的,所以我在阅读了关于 SO 的其他内容后找到了答案,这让我想得更远。

初始化我的子类 IASKAppSettingsViewController :

MyAppSettingsViewController *iaskvc = [[MyAppSettingsViewController alloc] initWithNibName:@"MyAppSettingsViewController" bundle:nil];

并添加我自己的 xib 文件(以前我没有)允许我自定义我需要的一切,然后它在 iPhone 上运行良好。

于 2012-12-08T19:09:59.797 回答