首页 文章

如何设计自定义导航栏

提问于
浏览
2

我搜索了很多如何设计图像中给出的导航 .

enter image description here

我已经为 UINavigationBar 创建了类别,如下面的解决方案所示Custom nav bar styling - iOS

能够使用下面的代码增加 NavigationBar 的大小 .

CGFloat navBarHeight = 84.0f;
CGRect frame = CGRectMake(0.0f, 0.0f, 320.0f, navBarHeight);
[self.navigationController.navigationBar setFrame:frame];

但是所有内容(如左按钮,右按钮, Headers )都移动到栏的底部 .

将段控制附加到titleView时如下所示

self.navigationItem.titleView = self.segmentedControl;

所有视图(左按钮, Headers ,右按钮)作为衬垫 .

我想要 segment control 导航栏的底部,如图所示 .

3 回答

  • 1

    @Shankar Shinde为什么要添加分段控制器作为导航 Headers 视图,您可以使用故事板在导航栏下面添加:检查下面的屏幕截图

    enter image description here

    我认为您需要使用以下代码隐藏导航栏并创建视图,如附加截图让我知道它对您有帮助吗?

    [self.navigationController.navigationBar setHidden:YES];
    

    enter image description here

  • 0

    请查看样品:

    https://github.com/boctor/idev-recipes/tree/master/WoodUINavigation

    它可能会帮助你:)

  • 0

    你可以使用 Prompt 为navigationItem提供首先给你的navigationItem提示

    self.navigationItem.prompt = @"";
    

    创建一个segmentcontroll

    UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:itemArray];
    segmentedControl.frame = CGRectMake(35, 200, 250, 50);
    segmentedControl.segmentedControlStyle = UISegmentedControlStylePlain;
    segmentedControl.selectedSegmentIndex = 1;
    [self.navigationController.navigationBar addSubview:segmentedControl];
    

相关问题