我在应用程序中有一个sqlite数据库,并坚持如何将从数据库中检索到的数据传递到多个文本框中。我可以将第一个选择传递到组件中,但是当我尝试将第二个数据选择传递到另一个文本框时,我的问题就出现了,同时在第一个文本框中保持前一个选择的数据相同。
基本上,用户选择食谱并将食谱传递到文本框1.然后选择另一个食谱并将食谱传递到文本框2. *如果为问题添加任何内容,则从不同的视图中选择食谱。选择后,视图将返回到文本框所在的位置。
我不是在寻找有人为我编码,而是我会怎么做。我应该能够做到这一点。 =)
非常感谢您提供任何建议。
我的文字组件
<s:Group id="group1" x="412" y="156" width="200" height="206" contentBackgroundAlpha="1.0" >
<s:TextInput id="tText1" x="22" y="30" width="157" height="25" fontSize="12"
text="{data.kTitle}"/>
<s:TextArea id="iText1" x="11" y="63" width="178" height="133" editable="false" fontSize="12"
text="{data.kIngredients}"/>
<s:Label id="timer1" x="174" y="8" click="timer1_clickHandler(event)" fontSize="13"
text="00"/>
<s:Label x="169" y="7" fontSize="13" text=":"/>
</s:Group>
<s:Group id="group2" x="754" y="37" width="200" height="206" visible="false">
<s:TextInput id="tText2" x="22" y="28" width="157" height="26" fontSize="12" text="{data.kIngredients}"/>
<s:TextArea id="iText2" x="10" y="63" width="178" height="133" editable="false" fontSize="12" text="{data.kTitle}"/>
<s:Label id="timer2" x="176" y="7" click="timer2_clickHandler(event)" fontSize="13" text="00"/>
<s:Label x="173" y="7" fontSize="13" text=":"/>
</s:Group>
点击“制作食谱”按钮 - 将食谱数据推回主视图
protected function viewRecipeButton_clickHandler(event:MouseEvent):void // make recipe button pushed
{
if(recipeList.selectedItem != null)
navigator.pushView(views.Timer_view, recipeList.selectedItem);
}
我如何获取SQlite数据
protected function getAllRecipes():void // get all the recipes from the DB
{
var stmt:SQLStatement = new SQLStatement();
var conn:SQLConnection = new SQLConnection();
stmt.sqlConnection = conn;
conn.open(File.applicationStorageDirectory.resolvePath("Recipes.db"));
stmt.text = "SELECT * FROM kItems WHERE kTitle IS NOT NULL";
stmt.execute();
recipeList.dataProvider = new ArrayCollection(stmt.getResult().data);
conn.close();
}
答案 0 :(得分:0)
你想要的是项目渲染器,可能在List或DataGroup中。您需要做的是将数据发送到数组中,将该数组传递给List并让列表显示您需要的信息。在你的事业中,它将是这样的:
<s:List dataProvider="{recipes}">
<s:itemRenderer>
<fx:Component>
<fx:ItemRenderer>
<s:TextInput text="{data.kTitle}"/>
<s:TextArea text="{data.kIngredients}"/>
</fx:ItemRenderer>
</fx:Component>
</s:itemRenderer>
</s:List>