如何在iOS UITableViewController

时间:2016-02-22 06:39:41

标签: ios uitableview

我试图在UITableViewController RATHER上显示整行数据,而不是在UITableViewController上显示整列数据。

以下是我在桌面视图中显示数据列的代码

-(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
    Location *object;
    object = [locationArray objectAtIndex:indexPath.row];
    cell.nameLabel.text = object.name;
    cell.descriptionLabel.text = object.address;
    cell.publisherLabel.text = object.latitude;
    return cell;
}

name在我的数据库中保存Name

address在我的数据库中保存Address

latitude在我的数据库中保存Latitude

下面的

是使用phpmyadmin的数据库表 enter image description here

  

通过这样做,我的tableview看起来像这样

enter image description here

  

我希望我的tableview显示此

enter image description here

我根本不确定如何做到这一点。如有任何帮助将不胜感激,谢谢!

3 个答案:

答案 0 :(得分:1)

我想评论,但声誉不够......

首先:

UITableView *cell = [tableView dequeueReusable....

为什么不将你的队列分配给UITableViewCell?

然后第二个: 您需要定义自己的UITableViewCell(可能在您的UIStoryboard中)并使用它创建类,这样您就可以定义单元格中所需的所有UILabel。

如果你已经这样做了,那么你的UITableViewCell就会出现,而不是UITableView。

第三名: 确保您的对象设置正确,否则显然您将无法获得正确的字段

修改

如果您希望所有字段都在单独的单元格中,那么您应该只使用单元格的textLabel属性。

您可以使用模运算,为每个对象创建一个部分,并决定该属性在此单元格中的行的模数。

答案 1 :(得分:1)

抱歉格式化无效,见下文
这两种方式。
1)将您的记录数加倍3.这将是您的总行数。所以如果有5条记录,5x3 = 15行。然后在cellforrowatindexpath

row 0 - name[0],  
row 1 - Address[0],  
row 2 - latitude[0],  
row 3 - name[1]....  

2)将记录数量作为部分数量。并在每个部分采取3行。然后在cellforrowatindexpath

row 0 section 0 - name[0],  
row 1 section 0 - Address[0],  
row 2 section 0 - latitude[0],  
row 0 section 1 - name[1]....

答案 2 :(得分:0)

几个月后我回头看这个,在获得iOS开发经验后,我觉得我找到了解决问题的方法。

我想如果我要将所需的所有信息都放在Applegoogle之下,然后将其放入字典并将其附加到数组中。

我还没有尝试过这个,但在做了一些Firebase开发之后,这就是我一直在做的事情,我认为这也是一样的。