更改Three20 navigationBarTintColor导致图像库ThumbView顶部的间隙

时间:2010-07-20 00:44:35

标签: iphone stylesheet uinavigationbar three20

我在我的应用程序中实现了Three20图像库。我想更改图像库屏幕顶部导航栏的颜色。我已经进入TTThumbsViewController.m并找到了以下行:

self.statusBarStyle = UIStatusBarStyleDefault;
self.navigationBarStyle = UIBarStyleDefault;

如果我更改这些值,导航栏的颜色/样式会发生变化,但导航栏和第一行图像之间会出现间隙。间隙看起来的高度大于导航栏的高度,但比第一行缩略图的长度短。

我已经实施了Three20样式表,但尚未解决问题。

2 个答案:

答案 0 :(得分:3)

在我的应用程序中,在我使用TTThumbsViewController的文件中,我将此方法添加到.m文件中并修复了间隙问题:

- (void) updateTableLayout {
self.tableView.contentInset = UIEdgeInsetsMake(5, 0, 0, 0);
self.tableView.scrollIndicatorInsets = UIEdgeInsetsMake(TTBarsHeight(), 0, 0, 0);
}

我现在能够将导航栏颜色更改为我想要的任何颜色,并且导航栏/表间距是正确的。

答案 1 :(得分:0)

正如qui前段时间谈到的那样,我遇到了同样的问题。在我的情况下,我已经为Three20的TTThumbsViewController创建了一个类别,当我试图覆盖updateTableLayout方法时,没有发生任何事情,所以我试图将相同的代码放入另一个方法 - viewWillAppear - 并且它有效。

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    self.tableView.contentInset = UIEdgeInsetsMake(5, 0, 0, 0);
    self.tableView.scrollIndicatorInsets = UIEdgeInsetsMake(TTBarsHeight(), 0, 0, 0);
}

我正在这里注册,以防万一。并且感谢克里斯的最初答案。