繁体   English   中英

如何设置表格视图高度。当搜索栏出现和消失时

[英]How to set the table view height.when search bar is appear and disappear

我有一个表视图,我正在显示来自 api 的一些数据。 我添加了一个搜索栏。我还有一个按钮名称,称为“搜索栏按钮项目按钮”。

那么条件是什么,当屏幕加载时 - 我的搜索栏将处于隐藏状态。如果我按下那个“搜索栏按钮”,那么只会显示搜索栏。

这是代码:

@IBAction func searchPressed(sender: AnyObject)
{
    if searchBar.hidden
    {
        searchBar.hidden = false
    }
    else
    {
        searchBar.hidden = true
    }
}

我需要的是,当第一次隐藏搜索栏时,我可以在表格视图上方看到更多空间。 但是当我的搜索栏显示时。 在我的表格视图中看不到空间。

但是当我的搜索栏处于隐藏状态时。 我在表格视图上方看到更多空间。 如何解决?

这是隐藏搜索栏且表格视图上方有空格时的图像:

没有搜索栏

这是显示搜索栏时的图像:

搜索栏

现在我该如何解决这个问题。 我需要的是,当我的搜索栏隐藏时,不应显示该空间,而我的表格视图应填充该空间。

怎么做? 我试过这个:

if searchBar.hidden
{
    searchBar.hidden = false
    TableViewList.rowHeight = 469
}
else
{
    searchBar.hidden = true
    TableViewList.rowHeight = 425
}

更新代码:

@IBAction func searchPressed(sender: AnyObject)
{
    if searchBar.hidden
    {
        searchBar.hidden = false
        TableViewList.frame = CGRectMake(0,0,self.view.frame.size.width,self.view.frame.size.height)
    }
    else
    {
        searchBar.hidden = true
        TableViewList.frame = CGRectMake(0,0,self.view.frame.size.width,self.view.frame.size.height-searchBar.frame.size.height)
    }  
}

但它没有用。

将您的UITableViewUISearchBar的底部。 显示UISearchBar ,将其顶部约束的constant调整为0 隐藏时,将其顶部约束的constant调整为-searchBar.bounds.height 这些值假设UISearchBar固定在UINavigationBar的底部

不需要额外的代码,只需从表格视图中删除搜索栏并将其放置在表格视图的顶部。 并在搜索栏隐藏时调整表格视图高度 { TableViewList.frame = CGRectmake(0,0,self.view.frame.size.width,self.view.frame.size.height) }

else { TableViewList.frame = CGRectmake(0,0,self.view.frame.size.width,self.view.frame.size.height-srachbar.frame.size.height) }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM