簡體   English   中英

UITableviewCell子類中的PFQuery並在cellForRowAtIndex中調用它:

[英]PFQuery in UITableviewCell subclass and calling it in cellForRowAtIndex:

我在我的視圖控制器的cellForRowAtIndex:有此查詢:

        PFQuery *query = [PFUser query];
        [query whereKey:@"objectId" equalTo:object[@"creator"]];
        [query getFirstObjectInBackgroundWithBlock:^(PFObject *object, NSError *error) {

            if (object) {

                PFFile *file = [object objectForKey:@"profileImg"];

                cell.avatar.file = file;
                [cell.avatar loadInBackground];

            }
        }];

我想將此方法移到自定義單元格的類中,是否有可能? 我試圖將其(進行一些修改)移動到單元格的.m文件中,但是無法從中創建類方法。

-(void) setupAvatar:(PFUser *)object {

          PFQuery *query = [PFUser query];
            [query whereKey:@"objectId" equalTo:object[@"creator"]];
            [query getFirstObjectInBackgroundWithBlock:^(PFObject *object, NSError *error) {

                if (object) {

                    PFFile *file = [object objectForKey:@"profileImg"];

                    self.avatar.file = file;
                    [self.avatar loadInBackground];

                }
            }];

}

我該如何解決這個問題? 在單元格的類中進行查詢是完全錯誤的,還是可以,但是我做錯了嗎? 如果有人可以向我展示正確的方法,我將不勝感激。

如果可以幫助,我將盡量避免在單元子類中進行此工作,因為它會破壞MVC模式。 沒有充分的理由去了解Parse,這是模型的工作。 如果有可能,我將嘗試為您的表視圖控制器充實一個數據源類,並要求您提供它作為圖像。 我也非常擔心在cellForRowAtIndexPath中進行這樣的調用,特別是因為它不同步。 我敢打賭,您會遇到一些非常奇怪的單元重用錯誤,因為該方法將經常運行,並且無法確定何時返回該方法-您的單元格圖像可能會開始獨立變化並表現出許多其他奇怪的現象行為。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM