- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
下午好
我正在使用 TableViewController 来显示我数据库中的一些“条目”,并且我正在尝试使用 [self.tableView reloadData];
来重新加载加载内容时显示表格,但它不起作用,因为只有当我向上或向下触摸屏幕时才会显示内容,如果我不触摸屏幕就不会显示任何内容。
我想我已经把 [self.tableView reloadData]; 放在了正确的位置,因为出于某种原因直到我用手指移动屏幕才显示。
为什么会这样,我该怎么做才能自动重新加载我的 tableview?
CarTableViewController.m:
- (void)viewDidLoad
{
[super viewDidLoad];
[self fetchJson];
}
那是我的 fetchJson:
-(void)fetchJson {
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_async(queue, ^{
NSString * urlString = [NSString stringWithFormat:@"http://website.com/service.php"];
NSURL * url = [NSURL URLWithString:urlString];
NSData * data = [NSData dataWithContentsOfURL:url];
self.carModels = [[NSMutableArray alloc] init];
self.carMakes = [[NSMutableArray alloc] init];
self.carImages = [[NSMutableArray alloc] init];
self.likes = [[NSMutableArray alloc] init];
self.comments = [[NSMutableArray alloc] init];
@try
{
NSError *error;
[_jsonArray removeAllObjects];
_jsonArray = [NSJSONSerialization
JSONObjectWithData:data
options:NSJSONReadingMutableContainers|NSJSONReadingMutableLeaves
error:&error];
for(int i=0;i<_jsonArray.count;i++)
{
NSDictionary * jsonObject = [_jsonArray objectAtIndex:i];
NSString* imagen = [jsonObject objectForKey:@"imagen"];
[_carImages addObject:imagen];
NSDictionary * jsonObject2 = [_jsonArray objectAtIndex:i];
NSString* user = [jsonObject2 objectForKey:@"user"];
[_carMakes addObject:user];
NSDictionary * jsonObject3 = [_jsonArray objectAtIndex:i];
NSString* date = [jsonObject3 objectForKey:@"date"];
[_carModels addObject:date];
}
}
@catch (NSException * e)
{
NSLog(@"Exception: %@", e);
}
@finally
{
[self.tableView reloadData];
}
}
);
}
提前致谢。
最佳答案
当我开始开发 iOS 应用程序时,我也经常遇到这个问题。
问题是,您没有在负责 UI 的主线程上运行 reloadData。事实上,如果你运行这个方法(不在主线程中),你的 tableView 的数据实际上会重新加载,但不会显示给用户。因此,如果您开始滚动 tableView,主线程将“绘制”您的用户界面,从而显示数据。所以你必须在主线程上运行reloadData。
所以取出
[self.tableView reloadData];
并在成功从数据库中获取数据(并且值存储在字典/数组中)后添加这些代码行:
dispatch_async(dispatch_get_main_queue(), ^{
[self.tableView reloadData];
});
我认为您甚至可以将该代码放入您的@finally block 中。 main main_queue 包含在主线程上运行的任务。
关于ios - TableViewController 内容不显示内容(reloadData),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26886452/
在我正在处理的当前项目中,我需要在 View 之间传输变量。我成功地将变量从 tableviewcontroller 传输到 UIviewcontroller,如下所示。 if segue.ident
我在将数据从 TableViewController 传递到嵌入 Container View 中的另一个 TableViewController 时遇到问题。当我在 prepareForSegue
我看过但没有找到合理的答案。我有第一个 TableViewController 可以容纳 4 行,当用户点击一行(导航层次结构)时,我想传递给第二个 tableViewController 一个字符串
我有一个正在创建的表单 此表单填充了用户输入的文本字段。回答完所有问题后,会弹出一个按钮进行保存。 我在让此 tableviewcontroller 将数据传递给新的 tableviewcontrol
我有一个带有搜索栏的表格 View 。搜索栏返回用户名包含搜索栏中文本的 PFUser。该部分工作正常,并且获取的用户显示在 TableView 中。当用户点击表格 View 单元格时,我想转到另一个
我正在开发一个基于日期的应用程序。我正在尝试获取从一个 TableViewController 传递到另一个 TableViewController 的信息。 这是一个基于通知的应用程序,可以提醒用户
我正在尝试从一个 TableViewController 中选择一个详细信息披露按钮(或一行)并转到另一个 TableViewController,而不将任何数据从第一个 TableViewContr
我正在尝试通过委托(delegate)将 TableView Controller B 中的图标和名称传递给 View Controller A。 为了简单起见,向用户展示了 ViewControll
我一直在尝试将一些数据(String)从TableViewController传递到嵌入在容器。 在 MainTableViewController 中我有以下代码: let vc = SecondT
这个问题已经有答案了: Passing data between view controllers (44 个回答) 已关闭 6 年前。 我有一个UITableViewController在列表中显示
据我了解,我无法使用 socket 连接将单元格中的按钮连接到我的 TableViewController。 不过,我可以使用操作连接将单元格中的按钮连接到我的 TableView。这是我巨大问题的根
我一直在努力切换 viewController。 我得到了以下 Storyboard: 左上角的 VC 是登录 VC,它通过模态 Segue 将 View 推送到 MainViewController
我有一个嵌入在 UINavigationController 中的 UITableView。我在 Storyboard中设置了一个 rightBarButtonItem 。如果我以正常方式继续,一切都
当detailText大于3行时,tableViewCell的标题标签总是被切掉,而detailText仅部分显示。我已设置 rowHeight 和 estimatedRowHeight,但结果保持不
我有以下问题: 我有一个应用程序,它使用两个 tableViewController。第一个 TableViewController 列表 struct Task{ let type: Stri
class SelectionBoxViewController: UITableViewController,UISearchBarDelegate { var searchbar = UI
我是 swift 的初学者,但我在 HTML、CSS 和一些 Java 方面确实有不错的背景。我创建这个帐户实际上只是为了问这个问题,所以我会开门见山。 我真的很喜欢 swift,但我真的花了一周的时
有没有办法将statusbar lightcontent颜色设置为UITableViewController? 好像没有这个功能 override open var preferredStatusBa
场景 |第一个单元 | |第二个细胞||开关 || | |第三单元 ||文本字段 | 我创建了一个包含三个不同类的动态表格 View :SecondTableCell(其中有一个开关的导出)和Thir
我正在将图像从 RESTApi 加载到 Netflix(例如 ScrollView)中。 func collectionView(_ collectionView: UICollectionView,
我是一名优秀的程序员,十分优秀!