如何隐藏和取消隐藏导航栏项目?

时间:2011-07-30 21:55:49

标签: objective-c cocoa-touch ios4 uinavigationcontroller uinavigationbar

我有一个标签栏应用,其中的项目是最喜欢的列表。 当我添加一个新的收藏夹并选择它打开时,它会加载正确的笔尖,但是有导航栏覆盖了一些文本。

如果没有涵盖所有内容的导航栏,我怎样才能让笔尖正确显示?我需要它回到收藏夹列表,但它涵盖了一些文本。我正在考虑隐藏\取消隐藏,但我已经尝试过,它隐藏了主导航栏(带收藏夹标题的那个)。有什么建议吗?

编辑:

我用来调用nibs的代码:

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
    {
        Favorite *fav = (Favorite *)[[[FavoritesData sharedFavoritesData] getFavorites] objectAtIndex:indexPath.row];
        NSString *selectedItem = fav.favId;

        if ([selectedItem isEqualToString:@"First"]) {
            Detail1 *detailViewController = [[Detail1 alloc] initWithNibName:@"Detail1" bundle:nil];
            [self.navigationController pushViewController:detailViewController animated:YES];
            [detailViewController release];
         }
}

我想在笔尖出现时隐藏后退按钮项目,并在点击屏幕时显示。并且为了使笔尖适应屏幕,由于导航有点透明。

3 个答案:

答案 0 :(得分:0)

您可以使用此属性隐藏导航栏:

   myNavController.navigationBarHidden = true

当你希望它再次显示时,只需设置为false:

   myNavController.navigationBarHidden = false

答案 1 :(得分:0)

自己创建两个UIButton并将它们设置为导航栏。之后,创建一个IBAction方法,如果它被取消隐藏将会隐藏,如果它被隐藏,它将取消隐藏。

答案 2 :(得分:-1)

我解决了所有问题,导航条颜色有问题(我选择黑色透明而不是黑色不透明),然后笔尖被它覆盖。我改变了,笔尖像我想要的那样重新调整大小。谢谢你的回答btw。