2014-10-02 49 views
0

我是相當新到iOS編程,所以請原諒任何白癡,將先:)iOS的文本字段/選擇組合通過大量的數據

我有一個表格的篩選,其中的一個字段只能是某個預定義的值。該清單有500多個選項。

我已經在Storyboard中實現了搜索欄和顯示控制器的使用,並且已經將數據解析成NSArray進行過濾。

問題我曾經是外表。所以我所做的是應用另一個視圖(只有視圖中的視圖 - 不知道這是否正確?),並將TableView和Search框放入視圖中。這樣我可以顯示/隱藏視圖。

然後我創建了一個按鈕(它看起來像一個字段 - 如果有意義的話),我已經在其中應用了操作來顯示視圖。

我可以顯示視圖和搜索/選擇的小區(其隨後更新所述按鈕值)

問題是,我已經選擇了一個選項後,我不能做到這一點再次,即沒有進一步點擊(IBAction)正在通過。這裏是我的代碼:

- (IBAction)selectionClick:(id)sender 
{ 
    [UIView animateWithDuration:0.25 animations:^{ 

     _searchView.alpha = 1.0f; 

    } completion:^(BOOL finished) { 

     [_searchView setHidden:NO]; 
    }]; 
} 


- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    if (tableView == self.searchDisplayController.searchResultsTableView) { 

     UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; 
     NSString *cellText = cell.textLabel.text; 
     [_SelectionValue setTitle:cellText forState:UIControlStateNormal]; 

     [self.view endEditing:YES]; 
     tableView.hidden = YES; 

     [UIView animateWithDuration:0.25 animations:^{ 

      _SearchView.alpha = 0.0f;     

     } completion:^(BOOL finished) { 

      [_SearchView setHidden:YES]; 
     }]; 
    } 
} 

如果您需要任何進一步的信息,請讓我知道:)

回答

1

設置爲0阿爾法和隱藏的觀點不會刪除從視圖控制器的看法。該視圖仍然存在,但不可見,並阻止任何行動對背後的看法。

嘗試

[_SearchView removeFromSuperview]; 

而不是

[UIView animateWithDuration:0.25 animations:^{ 

     _SearchView.alpha = 0.0f;     

    } completion:^(BOOL finished) { 

     [_SearchView setHidden:YES]; 
    }]; 

也 變量名正常啓動小寫字母。大多數例子遵循這種格式。

+0

感謝您的回覆。我已經嘗試過,但仍不允許進一步點擊。我是否正確添加視圖?有趣的是我嘗試刪除tableView.hidden = YES;看看是否被刪除,但這仍然出現?我只是把它作爲一個迷你黑客來刪除表格視圖... – sukh 2014-10-02 16:34:25

+0

我想我可以看到你正在嘗試做什麼。我接近它的方式是考慮控制表格和搜索對象的容器視圖。您不需要隱藏表格和搜索欄只是容器視圖。使用[self.view addSubview:yourViewsHere]將它添加到主視圖中; (當你需要展示時)以及在select方法中,使用[yourViewsNameHere removeFromSuperView]去除你的東西,然後移除容器視圖; – latenitecoder 2014-10-02 16:52:19

相關問題