我还没有找到用于列表选择器的NS + JS的有效示例,文档中的所有示例都没有XML示例。
有人可以帮忙吗?

最佳答案

您需要做的是将<ListPicker>items属性绑定到页面bindingContext上的数组。这是一个基本示例:

<!-- main-page.xml -->
<Page xmlns="http://schemas.nativescript.org/tns.xsd" loaded="pageLoaded">
  <StackLayout>
    <ListPicker
      items="{{ pokemon }}"
      id="pokemonPicker"
    ></ListPicker>
  </StackLayout>
</Page>




// main-page.js
var Observable = require("data/observable").Observable;

var pageData = new Observable({
  pokemon: ["Bulbasaur", "Charmander", "Squirtle"]
});

exports.pageLoaded = function(args) {
  var page = args.object;
  page.bindingContext = pageData;

  page.getViewById("pokemonPicker").addEventListener(
    Observable.propertyChangeEvent, function(e) {
      if (e.propertyName == "selectedIndex") {
        console.log("You selected: " + pageData.pokemon[e.value]);
      }
    }
  );
};

10-07 12:56