Nachdem ich viele Tutorials gesehen und viele Codeschnipsel ausprobiert habe, bin ich immer noch verwirrt darüber, wann und wie ObservableArray und Binding zu verwenden ist. Versucht, eine Liste der Werte von meinem JSON-Array zu bekommen - Alarm zeigt ihnen, Konsole zeigt, was ich dachte, es würde. Das einzige, was nicht funktioniert, ist mein Listenansicht. jede Hilfe von irgendjemandem bitte! gepostet mein Javascript und entsprechende XML unten.Anzeige von Array-Werten in Listenansicht
---- meinen Code aktualisiert. zeigt ein Array mit sechs Werten, von denen jeweils eines in den itemTemplates enthalten ist. Wie kann ich auf jede Instanz zugreifen? und die Schlüssel? müssen Schlüssel: Wert-Paare anzeigen und scheinbar fehlen die Schlüssel im Array. alles geschätzt!
listview.js
testJsonArray = {
"results": [{
"testName": "Multiplizieren",
"testKlasse": 3,
"testFach": "Mathematik"
},
{
"testName": "Addieren",
"testKlasse": 3,
"testFach": "Mathematik"
}]
};
function onPageLoaded(args) {
var page = args.object;
var observableArray = require("data/observable-array");
var i = testJsonArray.results.length;
var tests = new observableArray.ObservableArray([]);
while (i--) {
t = testJsonArray.results[i];
tests.push([t.testName, t.testKlasse, t.testFach]);
};
var c = tests.length;
while (c--) {
console.log(c);
};
alert(tests);
page.bindingContext = {myItems: tests};
}
exports.onPageLoaded = onPageLoaded;
listview.xml
<Page xmlns="http://www.nativescript.org/tns.xsd" loaded="onPageLoaded">
<ScrollView>
<ListView id="listview" items="{{ myItems }}">
<ListView.itemTemplate>
<StackLayout orientation="horizontal">
<Label text="{{ $value }}" />
</StackLayout>
</ListView.itemTemplate>
</ListView>
</ScrollView>
</Page>
Die ListView ist noch leer. Ich versuche, das Ganze heute zu überarbeiten. – stefanvz
Leicht überarbeiteter Code zeigt jetzt Werte für jeden Listenansichtseintrag (mit {{$ value}}). Aber kein Erfolg bei der Anzeige ausgewählter Werte. – stefanvz