使用FMDB将数据从sqlite显示到标签

如何显示来自SQLite的数据使用FMDB标签,如下所示:

在这里输入图像说明

我想显示任何输出是以这种格式供用户看到。 没有互动。 只显示select查询。

如果你想添加UILabel对象,只需遍历你的结果集,添加标签到你的视图。 就像是:

 NSInteger rowNum = 0; NSArray *columnWidths = @[@(50), @(120), @(75), @(75)]; CGFloat rowHeight = 24.0; FMResultSet *rs = [db executeQuery:sql]; while ([rs next]) { CGFloat x = 0.0; NSInteger colNum = 0; for (NSNumber *columnWidth in columnWidths) { UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(x, rowHeight * rowNum, [columnWidth floatValue], rowHeight)]; label.textAlignment = NSTextAlignmentCenter; label.layer.borderColor = [UIColor blackColor].CGColor; label.layer.borderWidth = 1.0; label.text = rs[colNum++]; [self.view addSubview:label]; x += [columnWidth floatValue]; } rowNum++; } [rs close]; 

我只是把它input,所以我确信那里有错别字,但是希望能够给你一个这个样子的概念。 如果屏幕上显示的行太多,可以在视图中添加一个滚动视图,然后将标签作为子视图添加到视图中。

我也认为tableview是一个很好的方法。 或者dynamic构build一个在UIWebView显示的HTMLstring。 吨的select在这里。 这取决于你的最终目标是什么,数据的性质,你想要什么types的用户交互。

你可以通过使用UITableView自定义 UITableViewCells来完成上述任务。

而且你可以维护一个数组作为视图控制器的数据源。

考虑到你想拥有与共享相同的布局(每行有四个标签),你将从数据库中获取数据。

由于从数据库中获取的数据可能会不断增加,因此在显示长列表的数据时,UITableView是最好的select,因为内存pipe理和单元格创build是自动处理的。

如果你打算只有标签,那么事情可能会变得棘手 。 因为如果您使用select查询获取的行数太多,那么您将最终创build大量视图,这将导致内存问题。

而且,如果您不希望用户与任何行进行交互,请执行以下方法:

 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { [tableView deselectRowAtIndexPath:indexPath animated:YES]; } 

这是创build自定义单元格的链接:

http://www.appcoda.com/customize-table-view-cells-for-uitableview/

这里是使用表格视图的链接:

http://www.appcoda.com/ios-programming-tutorial-create-a-simple-table-view-app/

祝你好运!!