2013-03-10 66 views
1

我是Coronoa和Lua的新手,我試圖弄清楚如何關閉地圖和文本框。地圖和文本框出現在主屏幕上,我可以創建一個按鈕(只是一個genreic黑色x)並使其關閉,但無法關閉地圖或文本框。下面是我使用的代碼片段,但我被卡住了。我搜索了Google,並通讀了他們的文檔,我只是想念一些東西。如何關閉地圖和文本框

local obj = display.newImageRect("closeButton.jpg" ,25,25) 
      obj.x = 60 
      obj.y = 410  -- replaced with newImageRect for dynamic scaling (adjust X & Y as required) 

    obj.touch = function (event) 
      local btn = event.target 
       if event.phase == "ended" then 
       btn.alpha = 0 -- example to show the function doing something 
       myMap.alpha = 0 
       textBox.alpha = 0 
      end 

    end 

    -- begin detecting touches 
    obj:addEventListener("touch", obj.touch) 

myMap = native.newMapView(25, 0, 275, 180) 
myMap.mapType = "hybrid" -- other mapType options are "satellite" or "hybrid" 
myMap.isScrollEnabled = true 
myMap.isZoomEnabled = true 
myMap.isLocationUpdating = true 
isVisible = myMap.isLocationVisible 
myMap:setCenter(38.354614, -81.726351) 
myMap:addMarker( 38.354614, -81.726351) 
-- Adding the Text Box that contains the Directions 
textBox = native.newTextBox(22, 183, 280, 225) 
textBox.text = "blah blah blah boring directions." 
local group = display.newGroup() 
group:insert(obj) 

我不斷收到「企圖指數當地‘我的地圖’(一個零值)」,併爲文本框中相同的錯誤。所以如果任何人都可以幫助,它表示讚賞

+0

只是在'obj.touch'函數上面局部聲明'MapView'和'textBox'。 (即,在你的函數調用上面添加兩行'本地myMap'和'本地文本框') – 2013-03-11 07:46:34

+0

所以我這樣做了,現在它只是給我'試圖索引upvalue'myMap'(一個零值)' – GhostShaman 2013-03-11 17:37:35

+0

我認爲模擬器不支持mapView。只要參考這個:http://developer.coronalabs.com/content/mapview – 2013-03-12 03:57:19

回答

5

局部聲明你的 'MapView類' 和 '框' 上面的 'obj.touch' 功能,如下圖所示:

local myMap; 
local textBox; 

注意:電暈的MapView沒有在模擬器的支持。

繼續編碼.................