Я пытаюсь заставить мою локальную базу данных sqlite отображать следующую запись одним нажатием кнопки.
Я смотрел на сообщения типа Получение следующей записи в базе данных SQLite для мобильного приложения , но их код дал мне небольшое решение.Вот пример моего кода:
AS3:
private function getNext():void
{
nextRecordId = targetRecordId + 1;
selectStmt = new SQLStatement();
selectStmt.sqlConnection = conn;
var sql:String = "SELECT [Index], Title, CAST(Picture AS ByteArray) AS Picture FROM Data WHERE [Index] = 1" ;
/* selectStmt.parameters[@nextRecordId] = nextRecordId; */ // Id of next record
selectStmt.text = sql;
selectStmt.addEventListener(SQLEvent.RESULT, selectResult2);
selectStmt.addEventListener(SQLErrorEvent.ERROR, selectError2);
selectStmt.execute();
}
private function selectResult2(event:SQLEvent):void
{
selectStmt.removeEventListener(SQLEvent.RESULT, selectResult2);
selectStmt.removeEventListener(SQLErrorEvent.ERROR, selectError2);
var result2:SQLResult = selectStmt.getResult();
dataField2 = new ArrayCollection(result2.data);
dp2 = ArrayCollection(dataField);
if (result2.data != null)
{
pngIndex = result2.data[0].Index;
pngTitle = result2.data[0].Title;
pngByteArray = result2.data[0].Picture;
displayPic.source = pngByteArray;
}
}
Пользовательский интерфейс MXML:
<s:Scroller interactionMode="touch"
width="640"
height="830">
<s:Group>
<s:Image id="displayPic"
x="0" y="16"
width="640"
scaleMode="stretch"
smooth="true" smoothingQuality="high"
/>
<!--<s:TextArea x="9" y="731" text="@{pngTitle}"/>-->
</s:Group>
</s:Scroller>
Большое спасибо за помощь / совет