搜尋

首頁  >  問答  >  主體

ios - swift 如何创建模型返回给cell?



我解析json 存放 和方式 总感觉怪怪的 不是最好的办法,我看到网上说可以用模型去返回cell
但是怎么应该怎么写这个模型???

举例用 table_name table_num 应该怎么创建模型 和返回到cell上面?? 希望得到解答。。。

PHP中文网PHP中文网2810 天前693

全部回覆(3)我來回復

  • 怪我咯

    怪我咯2017-04-17 17:42:42

    JSON->字典->模型?

    1.你看一下json返回的數據,推薦你用AFN請求,回來的數據response就是一個對象字典或者數組,因為json一般都是包裝成數組(數組裡也是字典其實)或者字典你可以去json. cn 直接看回傳資料的詳細結構
    2.設定一個模型模型中定義所需要的屬性名稱同字典的key值相同因為要用kvc直接字典轉模型

    簡單模型的定義與賦值:

    模型定義
    `import UIKit

    class UserInfo: NSObject {

    var screen_name:String?
    
    var profile_image_url:String?
    
    var verified: Int = -1
    
    var mbrank: Int = 0
    
    // kvc 遍历赋值
    init(dict:[String:AnyObject]) {
        
        super.init()
    
        setValuesForKeysWithDictionary(dict)
        
    }
    // 防止未定义属性未赋值报错
    override func setValue(value: AnyObject?, forUndefinedKey key: String) {
        
    }
    

    }`

    賦值的話 直接在cell需要的時候 拿實例化模型的屬性來賦值它就好了

    補充:這樣資料來源就是一個陣列 同時儲存了你需要的多組資料

    回覆
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:42:42

    反射呀~ Json -> Object
    然後你隨便玩~

    回覆
    0
  • 阿神

    阿神2017-04-17 17:42:42

    不要用模型返回cell,一個是model,一個是view,這兩個要盡量分開,你這個做法已經沒錯。但最好拿一個table_nameAndIdArray,這個array的每個元素是個name和id(可以用tuple,struct或class)。

    回覆
    0
  • 取消回覆