我正在使用带有自定义单元格的tableview,并希望在单击按钮时更改tableview的内容.当单元格正在加载数据时,我正在使用活动指示器.
这就是我创建指标视图的方式
indicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(141.0, 190.0, 37.0, 37.0)]; indicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhite; indicator.hidesWhenStopped = YES; [[self tableView] addSubview:indicator];
但似乎框架对指标没有影响.指示符而不是显示在表格的中心,显示在视图左上角的导航栏中.
我不知道这有什么问题以及为什么会这样.有人可以帮帮我吗. alt text http://www.freeimagehosting.net/uploads/95cbe49850.png
initWithFrame:
不是建议的创建方法UIActivityInidcator
.看一下API,你可以看到要创建一个UIActivityIndicator
,你应该使用
[[UIActivityIndicator alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
然后将其添加到您的视图中并setCenter:
按照Pablo的建议设置其位置.
此外,如果用户向上或向下滚动,将其添加到表视图中的某个位置将使其与表一起滚动.如果你把它放在表的超级视图中,它将保持原位.
试试这个:
activityIndicator = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 32.0f, 32.0f)]; [activityIndicator setCenter:CGPointMake(160.0f, 208.0f)]; [activityIndicator setActivityIndicatorViewStyle:UIActivityIndicatorViewStyleGray]; [activityIndicator startAnimating];
调用setCenter应该提供您期望的行为.
祝好运!