そろそろgetChildrenについて一言いっとくか

さてはて、読物語を作っていた時に得た知識をひけらかすシリーズ。
金曜ロードショーラピュタを見ながら、気楽にバルスのタイミングを伺いながら記事を書きます。

ということで、製作中お世話になったgetChildrenについて。
javascript使いの方にはおなじみなのかもしれませんが、個人的にアプリを作っていて便利に感じたのでご紹介。


画像は読物語でブックマークした本を管理する画面。13月になっているのは、次回のアップデートで直します・・・
ツイートする場合、本のTableViewRowの下にメニューのRowが表示され、タップすることによりツイート投稿画面へ変移します。

通常、ウインドウの変移にはパラメータを渡すことによって、前画面のウインドウでの情報を受け渡すことができますが、異なるTableViewRowをタップして対象となるRowの情報を得たいとき。

そんなときのgetChildren!

tableView.addEventListener('click',function(e) {

    if (e.source.clickName == 'row') {
	Ti.App.hogehoge = e.row.getChildren()[0].text;
    //処理は略
    }

}

TableViewRowを作成したときに、clickNameとして'row'を割り当てておき、本のRowをタップするときにTi.Appにぶら下げた変数に渡したいオブジェクトを渡してしまいます。
[0]は読物語での【読んだ】【読みたい】にあたるところです。
[]内はobjectをaddした順に0から降順になるようです。

無理矢理感は否めないのですが、これで異なるRowからも値を渡すことができます。
「こんな面倒なことしなくても、もっと簡単なやり方あるよ!」って人がいたら教えてもらえるとうれしいです。

ではでは。
loopunqool