Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.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 如何将UIActivityIndicator插入搜索栏文本字段?_Ios_Uisearchbar_Uiactivityindicatorview - Fatal编程技术网

Ios 如何将UIActivityIndicator插入搜索栏文本字段?

Ios 如何将UIActivityIndicator插入搜索栏文本字段?,ios,uisearchbar,uiactivityindicatorview,Ios,Uisearchbar,Uiactivityindicatorview,我想在搜索栏文本字段的右侧添加UIActivityIndicator。 这样,当搜索栏从数据库中获取数据时,它将继续显示加载状态 对此有何想法?将活动指示器添加为搜索栏的子视图,如: - (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar { UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicat

我想在搜索栏文本字段的右侧添加UIActivityIndicator。 这样,当搜索栏从数据库中获取数据时,它将继续显示加载状态


对此有何想法?

将活动指示器添加为搜索栏的子视图,如:

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
   UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
   spinner.center = CGPointMake(160, 240);
   spinner.hidesWhenStopped = YES;
   spinner.tag = 7;
   [self.searchBar addSubview:spinner];
}

当您想要删除活动指示器时,可以使用标签。

添加我的评论作为答案


您可以尝试使用
[searchbar addSubview:activityIndicator]没有内置的方法来执行此操作。使用方法
setImage:forSearchBarIcon:state:
可以更改的唯一内容是搜索图标。这可用于在搜索栏中添加不同的图像。解决方法是循环搜索栏的子视图,并将活动指示器添加到所需位置的子视图中。

使用微调器更改搜索放大镜

UITextField *searchField = nil;  
for (UIView *subview in searchBar.subviews) {    
    if ([subview isKindOfClass:[UITextField class]]) {      
        searchField = (UITextField *)subview;      
        break;    
    }  
}    
if (searchField) {      
      UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];

       searchField.leftView = spinner;    

} 
或者,如果愿意,可以在搜索栏视图上添加微调器

[self.searchBar addSubview:spinner];

[搜索栏添加子视图:activityIndicator]
在iOS 7中,您应该对(UIView*子视图在[[searchBar.subviews objectAtIndex:0]子视图中)执行
以查找
UISearchBarTextField