Gibt es eine Möglichkeit, einen Picker dynamisch zu füllen? Dies funktioniert für die Option Dialoge:Wie kann ein Picker mit Alloy mit Appcelerator dynamisch gefüllt werden?
view.xml:
<OptionDialog id="distributionPointsOptionDialog">
<Options>
<Option id="{dp}"></Option>
</Options>
</OptionDialog>
controller.js:
var dp = [];
for (var j in _data) {
if (_data[j].country == country) {
dp.push(_data[j].city + "-" + _data[j].dp_name);
}
}
$.distributionPointsOptionDialog.options = dp;
Gibt es eine Möglichkeit, das gleiche für einen mehrspaltigen Picker zu tun? Ich habe erfolglos versucht, einen Ein-Spalten-Picker zu füllen.
controller.js:
var fs = Ti.Filesystem;
var installedFonts = fs.getFile(fs.resourcesDirectory+ "/fonts").getDirectoryListing();
Ti.API.info("list of resourcesDirectory fonts: " + JSON.stringify(installedFonts));
var fonts = [];
for (var j in installedFonts) {
fonts.push(installedFonts[j]);
}
$.testPicker.column = fonts;
views.xml:
<Picker id="testPicker" selectionIndicator="true" height="Ti.UI.SIZE" width="70%" visible="true" zIndex="200" useSpinner="true">
<Column>
<Row title="{fonts}"></Row>
</Column>
</Picker>
Dies zu einem Fehler führt:
ERROR] : message = "undefined is not an object (evaluating '$model.__transform')";
Hallo Prashant! Vielen Dank für die klare Erklärung. Es funktionierte perfekt (es gab nur eine Zeile fehlt in der column.add-Methode) – user24957
Ja, ich übersprungen, dass für Sie zu erkunden, und Sie haben das getan :) und ich hoffe, Sie haben jetzt besser verstehen, wie effektiv Titanium Docs & API zu verwenden –