Titanium で困ったエラー Error : Change all rows children of TableView


TableViewRow がいくつかある状態で、例えば

  • 最初はデフォルト画像を表示させて
  • 後から全ての TableViewRow に add してある imageView.image を違う画像に差し替える

とかやりたい時に必ずエラーになってしまう。

imageView.image にアクセスするのが、rows[n].getChildren()[3].image だとして
2番目の tableViewRow だけを差し替える場合、

setTimeout(function(){
    tableView.data[0].rows[1].getChildren()[3].image = 'http://graph.facebook.com/1282639350/picture?type=square';
}, 3000);

これはちゃんと動く。

全ての tableViewRow を対象にしたいので、for で回して、

setTimeout(function(){
    for (var i = 0; i < data.length; i++) {
        tableView.data[0].rows[i].getChildren()[3].image = 'http://graph.facebook.com/1282639350/picture?type=square';
    }
}, 3000);

これはエラーになってしまう。

Titanium Studio のエラーメッセージ

[ERROR] Script Error = 'undefined' is not an object (evaluating 'tableView.data[0].rows[i].getChildren()[3].image = 'http://graph.facebook.com/1282639350/picture?type=square'') at list_friend.js (line 252).

多分、rows[i] のような数字以外の変数を入れてしまうと認識できないみたい。

フォーラムにも同じようなポストがあって、まだ解決できていないようだ。

どなたか解決方法を知ってらっしゃたら教えてくださいませ。

Related Posts

AIは「わかりません」と言わない。だから、言わせる仕組みを先に作った。

AIに任せているようで、実際にやっているのはマイクロマネジメントだった。

AIと毎日付き合っていると、意外と人間っぽい。忘れるし、伝わらないし、早とちりもする。

スタートアップの自動化に、正解はない。地道な積み重ねが、一番効いている。

テーマ探しは「現場に行く」と「AIに見つけてもらう」のハイブリッドで。

「AIが人類を滅ぼす」という議論と、日々AIを使う実践者から見える景色

LPを作るだけでは人は来ない。集客の「探す」もAIに任せ始めた

AIで自動化しても質を落とさない、秘伝のタレの作り方

AIで自動化したけど59テーマ中LPまで進んだのは37.3%だった

AIのスピードに、人間がついていけない。その現実を受け入れることが、長く付き合うコツだった。