简体   繁体   English

在tableview(iOS)中显示来自parse.com的数组

[英]Display array from parse.com in tableview (iOS)

I am tying to display in my table view an array that is on a database on parse.com I can display the first item in the array, but not the rest. 我想在我的表视图中显示一个在parse.com上的数据库上的数组我可以显示数组中的第一个项目,但不显示其余项目。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath object:(PFObject *)object {
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if(cell==nil){
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
    }   
    _ListArray = [object objectForKey:@"content"];
    NSLog(@"OBJECT = %@",_ListArray);
    NSString *cellValue = [NSString stringWithFormat:@"%@", [_ListArray objectAtIndex:indexPath.row]];

    cell.textLabel.text = cellValue;

    if(refresh <counter)
    {
        NSString *br = @"<br>";
        List = [NSString stringWithFormat:@"%@%@%@", List, br, cell.textLabel.text];
        NSLog(@"%@",List);
        refresh ++;
    }       
    cell.accessoryType =UITableViewCellAccessoryDisclosureIndicator;

    return cell;
}

If I try to use: 如果我尝试使用:

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [_ListArray count];
}

I get nothing in the table. 我在桌子上什么都没得到。

edit update: 编辑更新:

did remove the self.ListArray and going with _ListArray. 确实删除了self.ListArray并使用_ListArray。

in the h file: 在h文件中:

NSMutableArray *ListArray;
...
@property (retain, atomic) NSMutableArray *ListArray;

and then in m file: 然后在m文件中:

@synthesize ListArray = _ListArray;

regarding the: 关于:

self.ListArray = [object objectForKey:@"content"];

the object is the PFObject. 对象是PFObject。

i have queryForTable where i get the data from parse. 我有queryForTable,我从解析中获取数据。

- (PFQuery *)queryForTable {

    PFQuery *query = [PFQuery queryWithClassName:@"List"];
    [query whereKey:@"user" equalTo:[PFUser currentUser]]; // user
    [query whereKey:@"objectId" equalTo:[theListID objectId]]; // the specific list
    counter =[query countObjects];
    NSLog(@"%d",counter);

    // If Pull To Refresh is enabled, query against the network by default.
    if (self.pullToRefreshEnabled) {
        query.cachePolicy = kPFCachePolicyNetworkOnly;
    }

    // If no objects are loaded in memory, we look to the cache first to fill the table
    // and then subsequently do a query against the network.
    if ([self.objects count] == 0) {
        query.cachePolicy = kPFCachePolicyCacheThenNetwork;
    }

    [query orderByDescending:@"createdAt"];

    return query;

}

And to the objectForKey:@"content"]; 而对于objectForKey:@“content”]; content is the name of the column in my class on parse so i need to say what object from the class i want to get, and that is the array column named "content" content是我的类中解析的列的名称所以我需要说出我想要获取的类中的哪个对象,那就是名为“content”的数组列

The logg, (when the NSLog is active on the array. logg(当NSLog在阵列上处于活动状态时)。

Inköpslista[7856:12e03] Warning: A long-running Parse operation is being executed on the main thread. 
 Break on warnParseOperationOnMainThread() to debug.
2013-10-21 14:23:31.008 Inköpslista[7856:12e03] 1
2013-10-21 14:23:31.017 Inköpslista[7856:12e03] OBJECT = (
    "Br\U00f6d",
    Anka,
    Boll,
    Sko
)
2013-10-21 14:23:31.017 Inköpslista[7856:12e03] <html><body><br>Bröd
2013-10-21 14:23:31.545 Inköpslista[7856:12e03] OBJECT = (
    "Br\U00f6d",
    Anka,
    Boll,
    Sko
) 

Got it to work, did put the array were i get the data from parse, and then only call 得到它的工作,确实把数组从解析中获取数据,然后只调用

cell.textLabel.text = [_ListArray objectAtIndex:indexPath.row];

and then i can use: 然后我可以使用:

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return [_ListArray count];
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM