Как перезагрузить tableView в титане? - PullRequest
2 голосов
/ 20 марта 2012

мой код

     var tableData=[];
     var dict ={};
        dict["title"] ='My Title';
        tableData[0] =dict;



 var table = Ti.UI.createTableView({
            data:tableData,
        });
  self.add(table);

Эти данные отображаются правильно.

Затем в какой-то функции я обновляю массив.

  var dict ={};
    dict["title"] ='My New Title';
    dict["hasChild"]=true;
  tableData[0] =dict;

И устанавливаю данные таблицыиспользуя setData:

table.setData(tableData);

Но нет никаких изменений в tableView, я искал похожие вопросы, но не получил никакой помощи.

Ответы [ 3 ]

3 голосов
/ 28 марта 2012

Это будет работать ... Прежде чем устанавливать обновленные данные, сделайте tableView пустым с пустым массивом, а затем снова обновите его новыми данными.

table.setData([]);
table.setData(tableData);
2 голосов
/ 29 марта 2012

Вы также можете изменить Табличные данные с помощью table.data = tableData;. В некоторых случаях вам необходимо переустанавливать Данные с помощью table.setData( table.data );

2 голосов
/ 21 марта 2012

Попробуйте сначала удалить все объекты из массива, а затем обновить объект массива, а затем перезагрузить таблицу с table.setData(tableData);

...