私はクラスを使用してデータを取り込むUICollectionViewを持っています。現時点では、以下のコードに示すように、ダミーデータを入力しています。このダミーデータをFirebaseデータベースのデータで置き換えようとしています。クラスを使用してfirebaseデータを返す方法は?
import UIKit
class MrNobody
{
// MARK: - Public API
var title = ""
var description = ""
var numberOfMembers = 0
var numberOfPosts = 0
var featuredImage: UIImage!
init(title: String, description: String, featuredImage: UIImage!)
{
self.title = title
self.description = description
self.featuredImage = featuredImage
numberOfMembers = 1
numberOfPosts = 1
}
// MARK: - Private
// dummy data
static func createMrNobody() -> [MrNobody]
{
return [
MrNobody(title: "some text" , description: "some text", featuredImage: UIImage(named: "r1")!),
MrNobody(title: "some text" , description: "some text", featuredImage: UIImage(named: "r1")!),
MrNobody(title: "some text" , description: "some text", featuredImage: UIImage(named: "r1")!),
]
}
}
データを含めるために、私はlet ref = Firebase(url: "my app url")
を使用して、私のfirebaseデータベースを識別し
ref.observeEventType(.Value, withBlock: { snapshot in
print(snapshot.value)
}, withCancelBlock: { error in
print(error.description)
})
を使用してデータを読み込み、import Firebase
が含まれていた私は子供のデータを読み取ることができるが、私はできないのです機能のブロックreturn
で使用することができます。理想的には、私はenumerator = snapshot.childrenCount
を使用して、関心のあるノードに多くの子供がいる場合にはreturn
関数を繰り返し使用したいと考えています。
お手伝い、ご指摘いただけると幸いです。
ちょっとOP、私はあなたの質問がすでに答えられていることを知っていますが、私は単にあなたに 'MrNobody'クラスth atは 'FDataSnapshot'を取ります。これはコード内の複数の場所でそれらのスナップショットを使用する必要がある場合(おそらく、 '.ChildAdded'と' .ChildRemoved'イベントタイプを聴いている場合)にコード再利用を可能にするためです。 –