Здравствуйте
есть уменя 2 вью
testMobileAppHomeView - в нем есть List и listItemView - он показывается после того как пользователь выбрал в List какой-нибудь item
List заполняется, все чудесно, но когда я нажимаю на айтем листа, попадаю во вью listItemView и возвращаюсь обратно к вьюхе c List он оказывается пустым
Причем, выборка из базы отрабатывает, датапровайдер листазаполняется, видимо itemRenderer-ы не создаются заново
testMobileAppHomeView
Код AS3:
...
creationComplete="view1_creationCompleteHandler(event)"
protected function view1_creationCompleteHandler(event:FlexEvent):void
{
navigator.defaultPopTransition=slideRight;
navigator.defaultPushTransition=slideLeft;
trace("listView creationComplete");
if(sqlConnection.connected!=true)
{
sqlConnection.addEventListener(SqlConnectorEvent.CONNECTED,dbConnectedHandler);
sqlConnection.addEventListener(SqlConnectorEvent.CONNECT_ERROR,dbConnectErrorHandler);
sqlConnection.connect("db/picturesDB.db");
}
else
{
sqlReader.makeQuerry("SELECT * FROM appTable","appTable");
}
}
// ответ выборки из базы
protected function sqlReaderResultHandler(event:SqlReaderEvent):void
{
trace("result: "+event.messageData.data.length);
listDP.removeAll();
for(var i:int=0;i<event.messageData.data.length;i++)
{
var proxyObject:ObjectProxy=new ObjectProxy({
id:event.messageData.data[i]["id"],
pict:event.messageData.data[i]["pict"],
description:event.messageData.data[i]["description"]
});
listDP.addItem(proxyObject);
}
empList.dataProvider=listDP;
trace("empList.dataProvider.length="+empList.dataProvider.length);
}
// нажатие на айтем листа и открытие другой вьюхи
protected function empList_changeHandler(event:IndexChangeEvent):void
{
navigator.pushView(views.listItemView,empList.selectedItem);
}
почему так получается ?
P.S. Если кэшировать дата провайдер листа, то заполняется нормально