2014-03-01 2 views
0

화면의 오른쪽에 숨어있는 표시 객체를 장면으로 이동하려고합니다. 그것은 이미지 (즉, 배경)로 멋지게 작동하지만 텍스트로는 작동하지 않습니다 (coords는 print()로 디버깅 한 것처럼 보이지만 결코 표시되지 않습니다. 이미 obj : toFront를 시도했습니다). 나는 그들이 표시 객체 내부에서 작업 할 수 있다고 생각했기 때문에 모든 것을 표시 객체에 넣었습니다. 그냥 텍스트? 둘 다. 누구나 왜 이것을 무시할 수 있는지 알고 있습니까?루아 - 코로나 SDK - 텍스트가 표시 안에 나타나지 않습니다. 객체

function tscreen:init() 
    local textGroup = display.newGroup() 

    local menuBackground = self:getBtn("src/bgMenu.png") 
    menuBackground.isVisible = false 
    menuBackground.anchorX = 0.5 
    menuBackground.anchorY = 0.5 
    self.menuBackground = menuBackground 

    local optionsText = { 
     parent = textGroup, 
     text = "Hello World",  
     x = centerX, 
     y = centerY, 
     width = 128,  
     font = native.systemFontBold, 
     fontSize = 14, 
     align = "center" 
    } 
    local workText = display.newText(optionsText) 
    workText:setFillColor(1, 0, 0) 
    setPos(textGroup, W, 0) 
      --setPos() is a custom function that assigns x and y coords 
    textGroup.isVisible = false 

    self.textGroup = textGroup 
    end 

function tscreen:show() 
    local menuBackground = self.menuBackground 
    local textGroup  = self.textGroup 

    local inTime  = 1200 

    setPos(menuBackground, 2*W + centerX, centerY) 
    menuBackground.isVisible = true 

    setPos(textGroup, W, 0) 
    textGroup.isVisible = true 

    self:cancelTween(menuBackground) 
    self:cancelTween(textGroup) 

    menuBackground.tween = transition.to(menuBackground, {time = inTime, transition = easing.outExpo, x = centerX, 
     onComplete = function() 
     tscreen:cancelTween(menuBackground) 
    end 
    }) 

    textGroup.tween = transition.to(textGroup, {time = inTime, transition = easing.outExpo, x = 0, 
     onComplete = function() 
     tscreen:cancelTween(textGroup) 
     print(getPos(textGroup), textGroup.width, textGroup.height) 
    end 
    }) 

end 

필자에게는 Corona의 시작 버전이 있으므로 최근에 구현 된 Composer API가 없습니다. 이미이 사이트는 Corona SDK 포럼이 있기 때문에이 쿼리를 게시하는 가장 적합한 사이트는 아니지만 어쨌든 시도하고 있습니다.

답변

1

아무 문제가 보이지 않지만 그룹이 필요하지 않습니다. 텍스트 지금까지 볼 수 있는지 확인합니다, 초기화()에서 당신이 다른 무언가 일이 벌어지고 텍스트를 볼 수없는 경우

local optionsText = { 
    text = "Hello World",  
    x = 0, 
    y = 100, 
} 
local workText = display.newText(optionsText) 
workText:setFillColor(1, 1, 1) 

을, 어쩌면 당신의 init()가 호출되고 있지 않거나 이러한. 일단 그것을보고, 매개 변수를 원하는 색으로 채우고, 테스트하십시오. 여전히 작동하는 경우) (초기화에서, 직후에, 전환을 추가 :

local easeXto100 = { 
    time = 2000, 
    transition = easing.outExpo, 
    x = 100, 
    onComplete = function() print('did you see text move from x=0 to 100?') end 
} 
transition.to(workText, easeXto100) 

당신은 이제이 줄 것이다 사라 경우는, 다음) 쇼 (에 코드의 관련 부분을 이동 이동 표시되는 경우 너는 단서가있다.

+0

나는 테스트를 거쳐 테스트를 마쳤으며, 결국 나는 임시 해결책을 찾았다. "getBtn"함수를 사용하여 배경 이미지를 생성 했으므로 텍스트를 버튼으로 사용하도록 설정 한 텍스트에 대해 다른 \t 함수를 만들었습니다. 고마워. .. 포기하지 말라고 말해줘. – Zoske

+0

정말 기뻤습니다. 그래서 그 새로운 기능이 그것을 수정하면 무엇입니까? – Schollii

+0

이것은 btn http://pastebin.com/r4xaEg7R에 사용 된 함수이며 새로운 함수는 http://pastebin.com/rczXtXGJ입니다. – Zoske

관련 문제