0

Yelp からデータを取得するテーブルを持つリスト ビュー コントローラーがあります。Yelp API から Yelp データを収集するすべてのジョブを実行する「YelpObject.h/m」という名前の別のクラスがあります。また、YelpObject をシングルトンにしました。ListViewController の init メソッドでシングルトンを初期化します。

-(id)initWithPlace:(NSString*)city{
    self=[super init];
    if(self){
        [self setCityName:city];
        [[YelpObject sharedYelpObject] initializeYelpWithLocation:city term:@"Hotels"];
        [[YelpObject sharedYelpObject] makeConnectionsToYelp];
    }
    return self;
}

次の方法で:

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

names は、Yelp API の上位 20 のホテル名を持つ NSMutableArray です。「YelpObject.m」内から名前の内容を印刷しようとすると、目的のデータが含まれています。

しかし、ここでの問題は、「makeConnectionsToYelp」関数がデータを取得するまでに、上記のメソッドとすべてのテーブル データ ソース メソッドが呼び出されることです。これにより、テーブルには常にゼロ行が表示されます。

のメソッド呼び出しの後にのみ、テーブル データ ソース メソッドが呼び出されるようにする方法がわかりません。

[[YelpObject sharedYelpObject] makeConnectionsToYelp];

戻り値。

ここでコールバック メソッドが役立つかどうかはわかりません。私は iOS プログラミングの初心者であり、どんな助けも大歓迎です。

4

1 に答える 1