2

私はいくつかのプロパティ、クラスまたは構造体の配列を持つオブジェクトを持っています

これらのプロパティを配列に入れて、TableDataSource で簡単にアクセスできるようにしたい (セクション、インデックスパスなどのため)。

この初期化を書いてみました

var dataStructure = Array<Any>()

    var tweet : Tweet?{
        didSet{
            dataStructure.removeAll()
            dataStructure.append(tweet?.media)
            dataStructure.append(tweet?.urls )
            dataStructure.append(tweet?.hashtags)
            dataStructure.append(tweet?.userMentions)


        }
    }

そしてそれを取得する

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    // #warning Incomplete method implementation.
    // Return the number of rows in the section.
    let arr = dataStructure[section] as? NSArray

    if arr != nil{
        println(arr!)
        return arr!.count
    }else{
        return 0
    }
}

しかし、arrは常にnilです

多分私は NSArray にキャストしているからですか?しかし、「配列」にキャストできません

media 、 urls 、 hastags 、および userMentions は「Tweet」クラスで初期化されます

public var media = [MediaItem]()
public var hashtags = [IndexedKeyword]()
public var urls = [IndexedKeyword]()
public var userMentions = [IndexedKeyword]()

したがって、それらはかなり通常の配列です

4

1 に答える 1