Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.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
Iphone Tableview行显示槽加载视图_Iphone_Ios_Uitableview_Uiview - Fatal编程技术网

Iphone Tableview行显示槽加载视图

Iphone Tableview行显示槽加载视图,iphone,ios,uitableview,uiview,Iphone,Ios,Uitableview,Uiview,情况: 我试图在等待异步连接返回数据以填充tableview时显示加载屏幕 问题: 创建和添加加载屏幕工作正常,但是tableview会在其上绘制线条,请参见屏幕截图: 代码:我使用以下行添加视图: -(void) viewDidLoad{ [super viewDidLoad]; _loadScreen = [[LoadScreen alloc] initWithFrame:self.view.bounds]; [self.view addSubview: _lo

情况: 我试图在等待异步连接返回数据以填充tableview时显示加载屏幕

问题: 创建和添加加载屏幕工作正常,但是tableview会在其上绘制线条,请参见屏幕截图:

代码:我使用以下行添加视图:

-(void) viewDidLoad{
    [super viewDidLoad];

    _loadScreen = [[LoadScreen alloc] initWithFrame:self.view.bounds];
    [self.view addSubview: _loadScreen];
    [self fetchRemoteData];
}
问题:是否可以将加载视图添加到表的顶部?或者,我可以确保tableview在调用reloadData之前不会画线吗

-提前感谢,,
我已经这样做过很多次了:

-(void) viewDidLoad{
    [super viewDidLoad];

    _loadScreen = [[LoadScreen alloc] initWithFrame:self.view.bounds];
    [self.tableView addSubview: _loadScreen];
    self.tableView.hidden = YES;
    [self fetchRemoteData];

}

- (void)dataFetchedSuccessfully
{
    self.tableView.hidden = NO;
}

只需隐藏tableview并在加载数据后再次显示即可。

有一些方法可以解决此问题:

-设置表视图的页脚视图,以便所有行都消失

self.tableView.tableFooterView = [[[UIView alloc] initWithFrame:CGRectZero] autorelease];
-我假设您使用UItableViewController。如果self.view和self.tableView都表示相同的视图,那么通过设置:

self.tableView.hidden = NO;
它甚至会隐藏您的加载视图。我建议您做的是创建一个自定义视图,它的子视图是表视图。然后,您可以通过仅显示加载视图来隐藏此表视图


希望我能帮忙。

啊,太好了!有时候anwser比你想象的要简单:)你假设的正确。但我已经把它修好了。我确实必须将该类更改为包含uitableview的uiviewcontroller。我只在连接返回时分配并添加tableView。(Nick的anwser让我意识到我必须这么做,因为对tableviewcontroller隐藏视图会隐藏其中的所有视图。)