こんにちは、いくつかの UITableView があります。各テーブルに検索バーを追加したい。
そこで、UISearchbars に 2 つのテーブルを追加しました。
追加しただけsearchbars
で、追加しませんでしたUISearchbarDisplaycontroller
。
ユーザーが検索バーに何かを入力してキーボードの検索ボタンを押すと、検索結果が別のものNSMutableArray
になり、元の配列に割り当てられます。次に、UITableView
私のコードによると、その作業。何かを入力して検索ボタンを押すと、テーブルが新しいデータでリロードされます。しかし、今の問題は、セルをクリックできないことです。メソッドを呼び出していないようdidselectRowatIndex
です。しかし、セル内にあるボタンは正しくクリックできます。セル クリック イベントのみが呼び出されていません。
この理由は何でしょうか。私を助けてください
ありがとう
編集
.h
@interface HomeViewController : UIViewController<UITabBarDelegate,UITableViewDataSource,UITableViewDelegate,FPPopoverControllerDelegate,AVAudioPlayerDelegate,UISearchBarDelegate>
ViewDidload
searchbarAllusers.delegate=self;
searchbarAllusers.showsCancelButton = YES;
searchbarArtists.delegate=self;
searchbarArtists.showsCancelButton=YES;
Search delegates
-(void)searchBarSearchButtonClicked:(UISearchBar *)searchBar3
{
if (searchBar3.text.length==0) {
isSearch=NO;
}
else
{
isSearch=YES;
if (searchBar3.tag==1) {
[self filterListForSearchText:searchBar3.text :@"USR"];
}
else if (searchBar3.tag==2)
{
[self filterListForSearchText:searchBar3.text :@"ARTIST"];
}
[searchBar3 resignFirstResponder];
}
}
-(void)searchBarCancelButtonClicked:(UISearchBar *)searchBar2
{
[searchBar2 resignFirstResponder];
isSearch=NO;
if (searchBar2.tag==1)
{
tblAddFriends.delegate=self;
searchbarAllusers.delegate=self;
tblAddFriends.allowsSelection=YES;
[tblAddFriends reloadData];
}
else if (searchBar2.tag==2)
{
arrArtistList=artistTemparray;
tblArtists.delegate=self;
searchbarArtists.delegate=self;
tblArtists.allowsSelection=YES;
[tblArtists reloadData];
}
}
- (void)filterListForSearchText:(NSString *)searchText : (NSString *)status
{
[searchResult removeAllObjects];
if([status isEqualToString:@"USR"])
{
searchResult=[ws SearchItems:searchText :status];
[tblAddFriends reloadData];
}
else if([status isEqualToString:@"ARTIST"])
{
searchResult=[ws SearchItems:searchText :status];
[tblArtists reloadData];
}
}