2017-02-10 3 views
0

Swift 3 - Xcode 8 &テーブルビューを使用して、&のすべてのオブジェクトをclassName: "Task"に表示します。しかし、私はどのようにオブジェクトの数を25に制限し、ユーザーがテーブルビューの一番下に来たときにもっと25をロードするだけですか?Swift 3 Tableビューを使用してParseオブジェクトを表示する方法 - 表示するオブジェクト数を制限する方法

そして、どのように最新のタスクを得るためにユーザーがプルダウンすることができますか?私は事前に感謝!

let query = PFQuery(className: "Task") 
    query.whereKey("userId", equalTo: (PFUser.current()?.objectId!)!) 

    query.findObjectsInBackground(block: { (objects, error) in 

     if let posts = objects{ 
      for object in posts { 
       if let post = object as? PFObject { 

        self.taskType.append(post["type"] as! String) 
        self.taskTitle.append(post["title"] as! String) 
        self.taskDescription.append(post["description"] as! String) 
        self.taskPostal.append(post["postal"] as! String) 
        self.taskRegion.append(post["region"] as! String) 
        self.taskAmount.append(post["amount"] as! String) 
        self.taskAmountType.append(post["amountType"] as! String) 

        self.taskId.append(object.objectId!) 



        self.tableView.reloadData() 
       } 

      } 
     } 

    }) 
+0

FWIWテクニックあなたが一度に(25の項目を記述している)では改ページと呼ばれているに役立つかもしれない、ウェブ上でのiOSを使用して、いくつかのチュートリアルがあります。あなたは出て行く。 – Padawan

答えて

0

私はあなたに非常に簡単で、きちんとしたアニメーションとし、sutteringなしautomaticalyあなたの行を更新しますDwifftをお勧めします。

Dwifft + UIKit.swiftファイルとDwifft.swiftファイルをプロジェクトに追加します。 DwifftExampleと同様にUITableViewControllerを設定します。あなたはあなたの場合、taskTitle配列プロパティ(あなたのdiddのself.diffCalculator?.rows = taskTitleに適用される)であるかもしれないあなたのデータソースを拾う必要があります。このプロパティを使用して、例のようにnumberOfrowsInSectionデリゲートメソッドでカウントを返します。

オブジェクト内を反復処理してプロパティの配列に追加するときは、最初にそれらをローカル配列に追加し、forループの外側に+ =のプロパティを追加します。

それはパースのquery.limit = 25query.skipと遊ぶページ付けしています。次に、tableViewデリゲートメソッドwillDisplayCellで、indexPath.row == taskTitle.count-1をチェックし、トラックを保持する別のクエリを実行します。.skipの値。

するUIRefreshControl(とリフレッシュするためにプルを実装)と.removeAll(keepCapacity:ブール値)を使用してプロパティの配列をきれいにすることを忘れないでくださいまた、.SKIP値

をきれいにあなたは一緒に.reloadData()を使用する必要はありませんDwifftはセルの更新を自動的に実行するため、

0

あなたは制限を使用し、スキップ、LETクエリ= PFQuery

以下のようなことができます(クラス名: "タスク") query.whereKey( "はuserId"、equalTo:(PFUser.current()?。OBJECTID)! !)

query.limit = 50

query.skip = 0 // 0レコードをスキップし、次回は、この機能は、セットアップは、その後、50件のレコードをスキップします、= 50をスキップして実行します。

query.findObjectsInBackground(ブロック:{(オブジェクト、エラー)

関連する問題