我正在使用海报gridview并在Roku中显示多个海报。我在海报中使用了透明图像。有什么方法可以使用海报网格来更改白色或蓝色等背景?
编辑后的帖子:
我使用了如下的海报网格视图:
<PosterGrid
id = "ChannelPosterGrid"
translation = "[ 10 , 10 ]"
caption1NumLines = "2"
caption2NumLines = "2"
numColumns="4"
numRows="6"
focusBitmapUri="pkg:/images/imagegrid.png"
itemSpacing = "[ 20, 20 ]" />
在brs文件中,简单地进行访问:
m.top.grid = m.top.findNode("ChannelPosterGrid")
我尝试了三件事:
m.top.grid.backgroundURI = "pkg:/images/myImage.jpg" 'not work
m.top.backgroundURI = "pkg:/images/myImage.jpg" 'not work
scene.backgroundURI = "pkg:/images/white.jpg" 'Its set hole screen background 'scene is object of roSGScreen
答案 0 :(得分:0)
在您的场景中
m.top.backgroundURI = "pkg:/images/myImage.jpg"
或
m.top.backgroundColor = "0x0000FF" ' you get the bluest of the blue
因此,如果您想为组件或子屏幕提供背景,我的方法是在其下有一个Poster节点。
<Poster
id="bgPoster"
translation="[0,0]"
width="100"
height="200"/>
<MyAnyOtherNode
width="100" height="200" translation="[0,0]"/>
,然后在脚本中:
m.bgPoster = m.top.FindNode("bgPoster")
m.bgPoster.uri = "pkg:/your/image/path"
请考虑将PosterGrid组件包装在某些自定义组件中。
因此,您可以封装这个小东西。只需扩展Group
节点,然后将背景Poster和PosterGrid放入其中,然后添加<interface>
字段即可设置背景。这样,您便可以随时以自己喜欢的方式设置背景。