我正在努力让我的应用程序在WatchKit上工作。我使用Parse,只想显示" Request"的值。在我的PFObject中作为WatchKit表中的一行。我有表和行设置,行NSObject类只有一个标签,其中"请求"字段将填充。以下是我在Watch的InterfaceController中所拥有的内容。
#import "InterfaceController.h"
#import "TheTable.h"
#import <Parse/Parse.h>
#import "BlogView.h"
@interface InterfaceController()
@property (nonatomic, retain) PFObject *theObject;
@property (nonatomic, retain) NSMutableArray *rowTypesList;
@end
@implementation InterfaceController
- (void)awakeWithContext:(id)context {
[Parse setApplicationId:@"MYID"
clientKey:@"MYKEY"];
[super awakeWithContext:context];
// Configure interface objects here.
}
- (void)willActivate
{
PFQuery *query = [PFQuery queryWithClassName:@"Prayers"];
// 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.
[query orderByDescending:@"createdAt"];
[query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
if (!error) {
NSArray *array = [objects objectAtIndex:0];//Selects the first "object" from all the "objects"
array = [array valueForKey:@"Request"];//Makes a NSArray from the "pairs" values
_rowTypesList = [array mutableCopy];//Converts the array to a NSMutableArray
NSLog(@"%@", _rowTypesList);
} else {
// Log details of the failure
NSLog(@"Error: %@ %@", error, [error userInfo]);
}
}]; [self setupTable];
}
- (void)setupTable
{
NSLog(@"%@", _rowTypesList);
[_theActualTable setRowTypes:_rowTypesList];
for (NSInteger i = 0;_theActualTable.numberOfRows; i++)
{
NSObject *row = [_theActualTable rowControllerAtIndex:i];
TheTable *importantRow = (TheTable *) row;
[importantRow.textRowLabel setText:???]; //THIS IS PROBLEM AREA, HOW DO I GET TEXT HERE FROM THE MUTABLEARRAY
}
}
@end
如何将该行的数组值传入标签?
答案 0 :(得分:1)
我不太了解Objective C,但我明白了。
您需要从ParseQuery回调中调用setupTable并将结果数组传递给它,或者在回调和每次迭代调用中迭代该数组mytable.label.setText(array[i]["property"])
希望它有意义。