Я создаю свое первое приложение Roku, и хотя я могу отдельно визуализировать MarkupGrid и Rowlist, когда я пытаюсь реализовать Rowlist в той же сцене, что и MarkupGrid, мой экран становится черным.
Я решил поместить RowList в отдельный групповой узел, но я не уверен, как снова сделать RowList видимым в HomeScene.
HomeScene.XML
<component name="HomeScene" extends="Scene" initialFocus = "headerMarkupGrid">
<script type="text/brightscript" uri="pkg:/components/HomeScene.brs" />
<children>
<Poster
id="logo"
uri="pkg:/images/logo.png"
width="350"
height="150" />
<MarkupGrid
id="headerMarkupGrid"
translation = "[ 275, 10 ]"
itemComponentName="TopNavGroup"
itemSize="[550,150]"
itemSpacing = "[ 0, 10 ]"
drawFocusFeedback = "false"
numRows="1"
numColumns = "4"
/>
</children>
</component>
HomeScene.brs
sub init()
home = m.top.findNode("HomeScene")
' grab content from my ContentNode
MarkupGrid = m.top.findNode("headerMarkupGrid")
MarkupGrid.content = CreateObject("roSGNode","MarkupGridContent")
rowList = m.top.findNode("rowList")
m.top.setFocus(true)
end sub
headerRowList.XML
<?xml version="1.0" encoding="utf-8" ?>
<component name="headerRowList" extends="Group" initialFocus="RowList">
<children>
<RowList
id="RowList"
itemSpacing = "[ 0, 10 ]"
itemComponentName="PosterItem"
itemSize="[1920,300]"
numRows="3"
rowItemSize="[[800,400],[400,300]]"
rowHeights="[500,300]"
rowItemSpacing="[[30,0],[120,0]]"
focusXOffset="[300,30]"
/>
</children>
</component>
headerRowList.brs
Function init()
m.top.setFocus(true)
m.RowList = m.top.findNode("RowList")
content = CreateObject("roSGNode", "ContentNode")
For i = 1 To 3
rowContent = content.CreateChild("ContentNode")
rowContent.TITLE = "Row " + i.ToStr()
content.AppendChild(rowContent)
Next
m.RowList.observeField("content", "rowListContentChanged")
m.RowList.content = content
m.LoadTask = CreateObject("roSGNode", "RowListContentTaskVarWidth")
m.LoadTask.content = content
m.LoadTask.control = "RUN"
End Function
Я хочу, чтобы сцена выглядела примерно так:
[Nav option 1] [Nav option 2] [Nav option 3]
----------
{Rowlist that associates with "Nav Option 1" would go here.}