Swift代码库之分页Sqlite部分代码与逻辑

实现分页Sqlite部分逻辑

  • 构造sql
  • 计算总页数
  • 设置每页大小和起始位置
  • nextstep函数

代码

import Foundation
import UIKit

class RFPages {
    
    var sql:String!
    var total:Int!
    var step:Int!
    var page:Int!
    var db:RFWordDB!

    func initBySql(sql:String,step:Int){
        self.db=MyManager.sharedInstance.wordDB
        self.sql = sql
        self.total = self.db.getPages(sqlStr: self.sql)/step
        self.step = step
        self.page = 0
    }
    func isHasNext()-> Bool {
        if (self.page<=self.total){
            return true
        }
        return false
    }
    func nextPage()-> [FRWord]{
        var rs = [FRWord]()
        if isHasNext(){
            
            let qSql=self.sql + " limit \(self.step*1 ) offset  \(self.page*self.step )"
            print(qSql)
            rs=self.db.getPageList(sql: qSql)
            self.page=self.page+1
            return rs
        }
        else{
             return rs
        }
        
    }
    
    
}

往期精彩

  • 请点击,免费订阅《学Swift挣美元》专栏
  • 赚钱App研究之生成代码app
  • 赚钱App研究之格式转换类app

你可能感兴趣的:(Swift代码库之分页Sqlite部分代码与逻辑)