Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 未通过键盘输入更新UI搜索栏_Ios_Xcode_Ios5_Ios6 - Fatal编程技术网

Ios 未通过键盘输入更新UI搜索栏

Ios 未通过键盘输入更新UI搜索栏,ios,xcode,ios5,ios6,Ios,Xcode,Ios5,Ios6,我有一个ViewController,它的子视图包含一个UISearchBar。当我点击搜索栏时,键盘就会出现,我可以用“取消”按钮关闭它。问题似乎在于,当用户单击键盘按钮时,它不接受任何输入 #pragma mark - #pragma mark SEARCH METHODS #pragma mark - - (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar { self.mainSearchBar.showsC

我有一个ViewController,它的子视图包含一个UISearchBar。当我点击搜索栏时,键盘就会出现,我可以用“取消”按钮关闭它。问题似乎在于,当用户单击键盘按钮时,它不接受任何输入

#pragma mark -
#pragma mark SEARCH METHODS
#pragma mark -


- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar {

    self.mainSearchBar.showsCancelButton = YES;

    return YES;
}


- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{

    [self.mainSearchBar resignFirstResponder];

    self.mainSearchBar.showsCancelButton = NO;

    self.mainSearchBar.text = @"";

}

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar {

    [self.mainSearchBar resignFirstResponder];

}
以前有没有人遇到过这个问题,或者知道如何解决它

**更新*****

事实证明,当试图编辑UISearchBar时,Siri会起作用。不过,键盘输入还是不走运。我认为这与UISearchBar位于UIView上这一事实有关,UIView随后被添加为子视图。但我不知道如何修复它

**更新2*****
将搜索框移动到主UIView,我仍然收到相同的错误。我想知道它现在是否与导航控制器相关。

确保应用程序代理具有[self.window makeKeyAndVisible]。希望它能解决您的问题。

检查您是否在viewController的.h文件中添加了UISearchBarDelegate

还可以尝试以下代码:

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText

{
    NSLog(@"%@",searchText);
}

这必须与搜索栏相对于ViewController视图的呈现方式有关。为什么要将搜索栏设置为另一个视图的子视图而不是ViewController视图的子视图?

问题已解决,答案在上一个线程中找到


事实证明,在IOS6中,启动时可见检查需要在选项上单击。

Hi,刚才选中了一个代理,该代理确实有此方法Hi刚刚添加了该代理,并且没有任何区别。除了按下键时更新的UISearchBar外,一切正常。请尝试此委托方法:-voidsearchBarTextDidBeginEditing:UISearchBar*searchBar{}刚刚添加了它并在其中放置了一个NSLog。它在启动时会打印日志,但更新仍然不成功。嗨,这没有被识别,所以没有记录任何内容。我有一个位于底部的UIView。然后我在上面有一个UIView,它充当一个菜单——想想Facebook端的菜单界面,然后在上面我有一个UIView,它保存内容和UISearchBar。其想法是,当用户单击按钮时,俯视图将滑动。