как динамически добавлять макет в режиме прокрутки - PullRequest
0 голосов
/ 15 февраля 2019

Я хочу добавить элементы макета обтекания в виде прокрутки динамически, используя скрипт Java.но когда я пытаюсь добавить дочерний вид прокрутки, он говорит, что это не функция.я хочу знать, возможно ли достичь этого или нет.Еще одна вещь заключается в том, что мне нужно добавить макет по идентификатору, т.е. wrapId в коде ниже.

<Page xmlns="http://www.nativescript.org/tns.xsd" navigatingTo="onNavigatingTo">
    <Page.actionBar>
        <ActionBar title="Wrap Layout" />
    </Page.actionBar>
    <ScrollView>
        <StackLayout id="wrapId">

        </StackLayout>
    </ScrollView>
</Page>

это мой xml и ниже js

const WrapLayout = require("tns-core-modules/ui/layouts/wrap-layout").WrapLayout;
const StackLayout = require("tns-core-modules/ui/layouts/stack-layout").StackLayout;
var ScrollView = require('ui/scroll-view').ScrollView;
const Button = require("tns-core-modules/ui/button/").Button;

exports.onNavigatingTo = function (args) {
  const page = args.object;
  var wrapId = page.getViewById("wrapId");

  const myWrap = new WrapLayout();
  const myScroll = new ScrollView();

  myScroll.orientation = "vertical";

  for (let i = 0; i < 30; i++) {
    var button = `button${i}`;
    button = new Button();
    button.backgroundColor = "#0099CC";
    button.text = `${i}`;
    button.width = 150;
    button.height = 100;
    button.margin = 4;
    myWrap.addChild(button);
  }

  // myScroll.addChild(myWrap);
  page.content = myWrap;
};

1 Ответ

0 голосов
/ 15 февраля 2019

ScrollView аналогично Page, унаследованному от ContentView, который поддерживает удержание только одного дочернего элемента.Так и должно быть,

myScroll.content = myWrap;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...