gpt4 book ai didi

iphone - IOS:使用 UISearchbar 自动完成搜索

转载 作者:行者123 更新时间:2023-12-01 19:08:31 26 4
gpt4 key购买 nike

我有一个 NSMutableArray它由文本字段组成。我想在用户输入 UISearchBar 时加载它们.最初我不想在用户开始输入之前加载所有文本字段。只有用户开始输入需要加载的第一个字母建议。有什么帮助吗?

最佳答案

有很多逻辑,但我把我的逻辑放在这里:

拿两个 NSMutableArray将一个数组添加到另一个数组 ViewDidLoad诸如此类的方法,

self.listOfTemArray = [[NSMutableArray alloc] init]; // array no - 1
self.ItemOfMainArray = [[NSMutableArray alloc] initWithObjects:@"YorArrayList", nil]; // array no - 2

[self.listOfTemArray addObjectsFromArray:self.ItemOfMainArray]; // add 2array to 1 array

并编写以下 UISearchBar 的委托(delegate)方法
- (void)searchBar:(UISearchBar *)theSearchBar textDidChange:(NSString *)searchText
{
NSString *name = @"";
NSString *firstLetter = @"";

if (self.listOfTemArray.count > 0)
[self.listOfTemArray removeAllObjects];

if ([searchText length] > 0)
{
for (int i = 0; i < [self.ItemOfMainArray count] ; i = i+1)
{
name = [self.ItemOfMainArray objectAtIndex:i];

if (name.length >= searchText.length)
{
firstLetter = [name substringWithRange:NSMakeRange(0, [searchText length])];
//NSLog(@"%@",firstLetter);

if( [firstLetter caseInsensitiveCompare:searchText] == NSOrderedSame )
{
// strings are equal except for possibly case
[self.listOfTemArray addObject: [self.ItemOfMainArray objectAtIndex:i]];
NSLog(@"=========> %@",self.listOfTemArray);
}
}
}
}
else
{
[self.listOfTemArray addObjectsFromArray:self.ItemOfMainArray ];
}

[self.tblView reloadData];
}
}

输出显示在您的 Consol.
此代码可能对您有所帮助。

关于iphone - IOS:使用 UISearchbar 自动完成搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18349638/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com