我有一个使用一个iPhone应用程序UISearchBar
和UISearchDisplayController
。 搜索栏有三个按钮的范围。 我想键盘是数字键盘当一个特定的范围按钮被选中,而选择了其他范围按钮时是默认的键盘。
我已经实现了UISearchBarDelegate
selectedScopeButtonIndexDidChange:selectedScope
方法如下:
- (void)searchBar:(UISearchBar *)searchBar selectedScopeButtonIndexDidChange:(NSInteger)selectedScope
{
switch (selectedScope) {
case DeviceIDScopeIndex:
searchBar.keyboardType = UIKeyboardTypeNumberPad;
break;
default:
searchBar.keyboardType = UIKeyboardTypeDefault;
break;
}
}
我知道,该方法被调用,并选择有问题的按钮时,正确的情况下被触发。 但屏幕上的键盘不会改变,除非我点击取消按钮隐藏键盘,然后再次点击搜索栏,再次调出键盘。
有没有办法让键盘来改变自己,而它的屏幕上,或以编程方式隐藏它,然后重新出现。它?