OStack程序员社区-中国程序员成长平台

标题: ios - 横向设备时,UISearchBar 不附加导航栏 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 04:24
标题: ios - 横向设备时,UISearchBar 不附加导航栏

在导航栏下添加了 UISearch 栏。 我用

 [videoSearchBar  setFrame:CGRectMake(0, 64, 320, 44)]; 

适用于 iOS 7。

在横向模式下,导航栏和搜索栏之间存在间隙。 在早期版本中,它可以在没有 setFrame 的情况下正常显示。

在搜索栏下方有一个表格 View 。



Best Answer-推荐答案


导航栏的高度在纵向和横向之间变化。使用 topLayoutGuide 定位您的搜索栏。您可以在 Interface Builder 中或以编程方式执行此操作:

- (void)viewDidLoad
{
    [super viewDidLoad];

    UISearchBar *searchBar = [[UISearchBar alloc] init];
    searchBar.delegate = self;
    [self.view addSubview:searchBar];

    searchBar.translatesAutoresizingMaskIntoConstraints = NO;
    NSDictionary *views = @{@"v":searchBar,
                            @"topLayoutGuide":self.topLayoutGuide};

    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat"V:[topLayoutGuide][v]" options:0 metrics:nil views:views]];
    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat"H:|[v]|" options:0 metrics:nil views:views]];
}

#pragma mark - UISearchBarDelegate

- (UIBarPosition)positionForBarid <UIBarPositioning>)bar
{
    return UIBarPositionTopAttached;
}

关于ios - 横向设备时,UISearchBar 不附加导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19154082/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4