Высота выходов маршрутизатора вложенных страниц не регулируется (ios)

Я использую этот пример с вложенными выходами маршрутизатора страницы. Я обнаружил, что вложенный маршрутизатор всегда будет занимать 100% высоты страницы на iOS, тогда как на Android он будет подчиняться тому, что вы ему говорите.

Например, если вы сделали что-то подобное, вложенная страница-маршрутизатор-выход будет в полную высоту на iOS, но на Android она будет фактически высотой 400

<GridLayout rows="400, *">
    <GridLayout row="0">
        <page-router-outlet></page-router-outlet>
    </GridLayout>

    <GridLayout row="1">
        <Label text="Some other content"></Label>
    </GridLayout>
</GridLayout>

person keerl    schedule 04.03.2019    source источник
comment
Я использовал это в одном из своих проектов, и он работал нормально, с той лишь разницей, что я явно указал высоту page-router ‹StackLayout row = 0 height = 400› ‹page-router-outlet name = catoutlet› ‹/ page-router -outlet ›‹/StackLayout›   -  person Narendra    schedule 04.03.2019
comment
возможно ли создать детскую площадку?   -  person Narendra    schedule 04.03.2019
comment
Я не знаю, как быстро сделать детскую площадку из существующего проекта. Если вы просто клонируете эту ссылку, которую я прикрепил ранее, тогда в /src/app/tabs/tabs.component.html добавьте строку GridLayout в макет вкладки и установите для page-router-output заданную высоту.   -  person keerl    schedule 04.03.2019


Ответы (1)


На ios работает отлично. Только с вашим кодом может быть какая-то другая проблема. Как вы предложили, я клонировал код github и добавил его на игровую площадку, чтобы вы могли протестировать. Вы можете получить доступ к игровой площадке здесь.

Я бы посоветовал добавить вашего ребенка на вышеуказанную площадку и провести тест. Может быть, этот дочерний компонент имеет 100% высоту, которая перекрывает родительский.

person Narendra    schedule 04.03.2019
comment
Ваш маршрут был неверным, вкладка не загружалась. Посмотрите на эту версию, которую я сделал в player / player.component. html есть метка, выровненная по нижнему краю, но вы не видите ее, потому что родительский элемент перекрывает ее. - person keerl; 05.03.2019
comment
Я только что изменил GridLayout на Stack в Players.component.html и вижу обе метки. play.nativescript.org/?template=play-ng&id=HyUzi5&v=6 < / а> - person Narendra; 05.03.2019
comment
Я все еще считаю, что он работает нормально, может быть, я не понимаю, чего вы пытаетесь достичь здесь. - person Narendra; 05.03.2019
comment
Это именно то, что мне было нужно, StackLayout решил это. Спасибо. В последней ссылке, которую я отправил, он вел себя по-разному на iOS и Android, поэтому я не уверен, что такое номинальное поведение. - person keerl; 05.03.2019
comment
Рад узнать, что это сработало. Практически всегда нужно установить высоту в iOS, чтобы она работала. - person Narendra; 05.03.2019
comment
Если у вас есть ответ, рекомендуется помечать ответ как принятый, чтобы люди не тратили время на чтение вопросов и ответов, а затем на то, чтобы узнать, что на сообщение был дан ответ. Я вижу, что в теге nativescript много таких сообщений. - person Narendra; 05.03.2019