2013-11-04 67 views
0

我是新來的ios。我有一個tableview和一個文本框。方法cellForRowAtIndexPath不從方法調用shouldChangeCharactersInRange

當編輯我想在文本框

我有以下的方法顯示在tableview中元素的列表,根據輸入的文本框:

-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { 

    NSString *searchText = [[NSString alloc] initWithString:[textField.text stringByReplacingCharactersInRange:range withString:string]]; 

    [self.mainTableView reloadData]; 
} 

但該方法的cellForRowAtIndexPath不叫。爲什麼? 我做了intitialize dataSource和委託。

+0

在此方法中放置一個斷點並檢查mainTableView是否有效。 –

回答

1

cellForRowAtIndexPath被調用,如果至少有一個單元格要顯示,並且tableview是可見的。 似乎缺少一些要求。 您是否檢查numberOfRowsInSection是否返回與0不同的東西?

+0

我發現這個問題:)。我沒有在numberOfRowsInSection中返回正確的值。謝謝! –

+0

我沒有看到每個單元格中的任何元素。你有什麼想法,爲什麼? –

+0

只要檢查你的'cellForRowAtIndexPath'方法。它中的元素是否爲空或不作爲子視圖添加? – KIDdAe

相關問題