gpt4 book ai didi

iphone - 更改 UISearchBar TextField 的大小?

转载 作者:行者123 更新时间:2023-12-03 18:15:25 28 4
gpt4 key购买 nike

我有一个 UITableView,侧面有一个索引;我想向其中添加一个 UISearchBar,但索引与“x”重叠以清除搜索。我注意到在“联系人”应用程序中,UISearchBar 中的文本字段已调整大小以适应此情况,但我无法弄清楚如何在我自己的应用程序中执行此操作。

我在 viewDidLoad 中尝试了以下方法,但似乎不起作用。

UITextField * textField = (UITextField *)[[self.search subviews] objectAtIndex:0];
CGRect r = textField.frame;

[textField setFrame:CGRectMake(r.origin.x, r.origin.y, r.size.height, r.size.width-30)];

有什么想法吗?

最佳答案

这比所有这些建议要容易得多。在界面生成器中,您可以放置​​一个 View ,而不是将搜索栏作为 TableView 的标题。然后,在该 View 中放置一个导航栏。捕获导航栏左侧的大小调整 handle 并将其向右拉,直到 NB 仅 25 像素宽。清除NB中的标题(双击选择它,然后删除)。然后,将搜索栏添加到同一 View 中。将其右侧大小调整 handle 向左移动,调整使其紧靠NB。就这样。

如果您愿意,您也可以启用取消按钮,并且它也不会与索引重叠(保留在搜索栏中)。

显然, TableView 的标题中只能有 1 个 subview ,这就是为什么您需要将 View 放在前面,然后将 N B 和搜索栏放在其中。

更新:请参阅 Apress 的《开始 iPhone 开发》,第 14 页。 SDK 3 版本的 241。您只需在搜索时禁用索引即可。

- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView {
if (isSearching) {
return nil;
}
return keys;
}

他们还谈到在索引顶部添加一个放大镜。

到处都是好书。

关于iphone - 更改 UISearchBar TextField 的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/556814/

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