2015-07-01 41 views
2

我有一個ViewController與之前的導航控制器,它有一個TableView和其他內部元素。 tableView還有一個搜索欄,在場景中,除了主ViewController外,我還有一個搜索顯示控制器。UISearchDisplayController與ViewController問題

功能是工作,但我有以下的用戶界面問題:

  1. 雖然我的主要觀點有黑色背景顏色(和大部分元素有黑色的背景色),當我拖動的tableView向下有出現一些白色空間。

enter image description here

我還具有以下初始設置爲UI

-(void) viewWillAppear:(BOOL)animated{ 
    [super viewWillAppear:animated]; 

    self.view.backgroundColor = [UIColor blackColor]; 
    self.tableView.backgroundColor = [UIColor blackColor]; 

    self.searchDisplayController.searchResultsTableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine; 
    self.searchDisplayController.searchResultsTableView.separatorColor = [UIColor blackColor]; 
    self.searchDisplayController.searchResultsTableView.separatorInset = UIEdgeInsetsMake(0, 12, 0, 12); 


    [self.searchDisplayController.searchResultsTableView setBackgroundColor:[UIColor blackColor]]; 
    [self.searchDisplayController.searchContentsController.view setBackgroundColor:[UIColor blackColor]]; 
    self.searchDisplayController.searchBar.barStyle = UIBarStyleBlack; 
    self.searchDisplayController.displaysSearchBarInNavigationBar = NO; 
} 
  • 當我搜索結果,和之後的向上拖動表搜索欄中,有一個可以看到表格視圖的小地方。
  • enter image description here

    任何想法我怎麼能解決這個問題:(

    編輯更新:? 兩者都解決了去除從TableView中的搜索欄在此之後的另一個問題來了搜索的動畫。顯示控制器不更新搜索欄這是解決了以下職位: UISearchBar animation issue

    +0

    好,我很高興你能解決你的問題。祝你好運,編碼;) –

    回答

    2
    1. 你必須設置UIView背景顏色爲黑色(不僅僅是UITableView顏色)。
    2. 您必須將表格視圖放置在UISearchBar以下,您可以以編程方式或通過IB執行此操作。我建議第二個選項。挺容易。
    +0

    1.'self.view.backgroundColor = [UIColor blackColor];' 'self.tableView.viewForBaselineLayout.backgroundColor = [UIColor blackColor]; ' 這沒有做什麼。 2. IB是什麼意思? –

    +0

    1.使用self.view。 UITableView是UIView的子視圖,僅此而已。 2. IB代表Interface Builder(故事板,xib)。您可以通過IB或以編程方式設置框架座標來安排界面元素的位置。 –

    +0

    1.已經做到了,如上所見。 2.我正在嘗試,會回來。 –

    相關問題