在我的带有searchBar的tableViewController中,我使用了以下方法:
-(void) searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
...my code
}当我直接在searchBar中输入文本时,它工作得很好。
我现在的问题是,我想要以编程方式调用这个方法-这意味着我想从我知道如何做的代码中填充搜索栏(实际上我在我的语言字典应用程序中选择了最近搜索到的单词),并调用类似于:
[SearchBar textDidChange: recentlySearchedWord]但这在我的代码中的任何地方都不起作用。
如果您有一些想法如何解决这个问题,请帮助我。
谢谢,
时间
发布于 2012-07-29 00:08:44
如果您在视图控制器(或任何类)中实现了UISearchBar的委托方法- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText,并且希望从同一个类中调用该方法,我假设这就是您想要做的,那么您必须调用
[self searchBar:SearchBar textDidChange:recentlySearchedWord];其中SearchBar是您引用的UISearchBar的实例。
发布于 2012-07-29 00:56:41
textDidChange不是类方法。因此,与其调用:
[SearchBar textDidChange: recentlySearchedWord];打电话
[self searchBar:mySearchBar textDidChange: recentlySearchedWord];或者,如果textDidChange在不同的类中,则使用self的类实例。
发布于 2016-10-30 23:21:09
您也可以尝试使用此代码,如果它使任何事情变得更容易。
<!DOCTYPE html>
<html>
<head>
<style>
input[type=text] {
width: 100%;
box-sizing: border-box;
border: 2px solid #ccc;
border-radius: 4px;
font-size: 16px;
background-color: white;
background-image: url('searchicon.png');
background-position: 10px 10px;
background-repeat: no-repeat;
padding: 12px 20px 12px 40px;
}
</style>
</head>
<body>
<p>Input with icon:</p>
<form>
<input type="text" name="search" placeholder="Search..">
</form>
</body>
</html>
https://stackoverflow.com/questions/11702305
复制相似问题