Corona中的Gridview不滚动
我在Corona的GridView中显示图像,但我不知道为什么GridView没有滚动。请大家帮我怎么做?我的main.lua文件代码和屏幕截图如下所示Corona中的Gridview不滚动,gridview,coronasdk,Gridview,Coronasdk,我在Corona的GridView中显示图像,但我不知道为什么GridView没有滚动。请大家帮我怎么做?我的main.lua文件代码和屏幕截图如下所示 display.setStatusBar( display.DefaultStatusBar ) local widget = require( "widget" ) local gridView = require("gridView") local photoArray ={"assets/pic1.png","assets/pic1.pn
display.setStatusBar( display.DefaultStatusBar )
local widget = require( "widget" )
local gridView = require("gridView")
local photoArray ={"assets/pic1.png","assets/pic1.png","assets/pic2.png","assets/pic3.png","assets/pic4.png","assets/pic5.png","assets/pic5.png"}
local photoTextArray = {"pic7","pic1","pic2","pic3","pic4","pic5 Long Text Test","pic6"}
gridView:new(25, 50, photoArray, photoTextArray, 2, 10, 20,150, 150, gridListener)
local function gridListener(index)
print("You select item "..index)
end
我使用了这个链接来做这个所以,我在Corona中使用了scrollView小部件来显示像Gridview这样的图像。这里是我的代码
display.setStatusBar( display.DefaultStatusBar )
local widget = require( "widget" )
local scrollView = widget.newScrollView
{
--left = 0,
--top = 0,
--width = display.contentWidth,
--height = display.contentHeight,
id = "onBottom",
horizontalScrollDisabled = false,
verticalScrollDisabled = false,
listener = scrollListener,
}
local centerX_Row1 = 110
local centerX_Row2 = 110
local shows = {}
local length = 5;
function displayShow( event )
print( "Touch event began on: "..tostring(event.target[2].text))
![enter image description here][1]end
for k = 1,length,1 do
shows[k] = {}
shows[k].image_name = "assets/pic8.png"
shows[k].showname = "show "..k
end
for k = 1,#shows,2 do
--Row 1
local group = display.newGroup();
--local image = display.newImage( shows[k].image_name )
local image = display.newImageRect(shows[k].image_name,175,125)
local text = display.newText(shows[k].showname,-40, -60, native.systemFontBold, 24 )
group:insert(image)
group:insert(text)
group.x = centerX_Row1
group.y = 100
centerX_Row1 = centerX_Row1 + 190
group:addEventListener( "tap", displayShow)
scrollView:insert( group )
if(k+1 <= #shows) then
--Row 2
local group = display.newGroup();
--local image = display.newImage( shows[k+1].image_name )
local image = display.newImageRect(shows[k].image_name,175,125)
local text = display.newText(shows[k+1].showname, -40, -60, native.systemFontBold, 24 )
group:insert(image)
group:insert(text)
group:addEventListener( "tap", displayShow)
group.x = centerX_Row2
group.y = 240
centerX_Row2 = centerX_Row2 + 190
scrollView:insert( group )
end
end
display.setStatusBar(display.DefaultStatusBar)
本地小部件=需要(“小部件”)
本地滚动视图=widget.newScrollView
{
--左=0,
--top=0,
--宽度=display.contentWidth,
--高度=display.contentHeight,
id=“onBottom”,
水平滚动已禁用=false,
verticalScrollDisabled=false,
listener=scrollListener,
}
本地centerX_行1=110
本地centerX_行2=110
本地显示={}
局部长度=5;
函数显示(事件)
打印(“触摸事件开始于:“…tostring(event.target[2].text))
![在此输入图像描述][1]结束
对于k=1,长度为1do
显示[k]={}
显示[k]。image_name=“assets/pic8.png”
显示[k]。showname=“显示”。.k
结束
当k=1时#表示,2表示
--第1行
本地组=display.newGroup();
--本地图像=display.newImage(显示[k]。图像名称)
本地图像=display.newImageRect(显示[k]。图像名称,175125)
本地文本=display.newText(显示[k].showname,-40,-60,native.systemFontBold,24)
组:插入(图像)
分组:插入(文本)
组x=中心x_行1
组y=100
centerX_行1=centerX_行1+190
组:addEventListener(“点击”,显示)
滚动视图:插入(组)
如果(k+1只是一个尝试,但根据您显示的代码,您没有设置scrollwidth和scrollheight。您需要设置这两个,因为它们都是必需的。这决定了您的scrollview的大小。当我第一次使用scrollview时,我遇到了同样的问题。我只设置了宽度和高度,它就起作用了。以下是scrollview的文档克罗尔维尤:好吧,祝你的项目好运。希望我能帮忙。:)继续编码!