반응형
블로그 이미지
개발자로서 현장에서 일하면서 새로 접하는 기술들이나 알게된 정보 등을 정리하기 위한 블로그입니다. 운 좋게 미국에서 큰 회사들의 프로젝트에서 컬설턴트로 일하고 있어서 새로운 기술들을 접할 기회가 많이 있습니다. 미국의 IT 프로젝트에서 사용되는 툴들에 대해 많은 분들과 정보를 공유하고 싶습니다.
솔웅

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함

카테고리


반응형

얼마전 KOW님 질문에 대한 corona sdk 의 답변이었죠?


코로나로 개발하면서 안드로이드의 메뉴 버튼 클릭했을 때 이것을 콘트롤 할 수 있느냐는 거요.

대답은 event.keyName API를 보라는 거였는데요.


그 document를 아래 번역합니다.

예제 소스도 하나 만들었습니다.


event.keyName

Description:

"key" 리스너를 사용해서 눌려진 navigation key 의 이름을 스트링으로 얻습니다. key의 state (up,down)에 대한 사항은 event.phase를 보세요.

Note : home 하고 text 키들 (A-Z,0-9,punctuation)을 capture 될 수 없습니다.

** 안드로이드 디바이스에만 해당 됩니다.***


Syntax: keyName = event.keyName


Example:

-- Key listener
local function onKeyEvent( event )
        local phase = event.phase
        local keyName = event.keyName
        eventTxt.text = "("..phase.." , " .. keyName ..")"
 
        -- we handled the event, so return true.
        -- for default behavior, return false.
        return true
end
 
-- Add the key callback
Runtime:addEventListener( "key", onKeyEvent );


Note : keyEvent 리스너에서 false를 사용하면 해당 키의 디폴트 액션이 실행 됩니다.


Parameters: 없음


Returns: string


눌려진 navigation key의 이름이 return 됩니다 : "back", "search", "menu", "volumeUp", "volumeDown".

The D-Pad/Trackball key strings 는 "up", "down", "left", "right", "center" 가 return 됩니다

Note: home 키는 캡쳐 될 수 없습니다.


안드로이드 디바이스에서만 가능하고 코로나 SDK Build 2011.559 이상에서만 작동 합니다.

   

이상입니다.





위 소스를 조금 변경해서 아래 샘플 코드를 만들어 봤습니다.


-- Key listener
    _W = display.contentWidth;
    _H = display.contentHeight;
local txtPhase, txtKeyName, haveFun

txtPhase = display.newText( "Phase ", _W/2, _H/5, native.systemFont, 32 )
txtKeyName = display.newText( "KeyName : ", _W/2, _H/3, native.systemFont, 32 )
haveFun = display.newText( "Move", _W/8, _H/2, native.systemFont, 32 )

local function onKeyEvent( event )
        local phase = event.phase
        local keyName = event.keyName

        txtPhase.text = phase;
        txtKeyName.text = keyName;

        haveFun.x = haveFun.x + 50;
        if(haveFun.x > _W) then haveFun.x = 0 end
         -- we handled the event, so return true.
        -- for default behavior, return false.
        return true
end
 
-- Add the key callback
Runtime:addEventListener( "key", onKeyEvent );


main.lua에 이 소스를 붙여 넣고 실행하시면 화면에 phase와 keyName이 뜰겁니다.

제 디바이스에서 menu , back, search, volumeUp, volumeDown 등이 뜨는 거 확인 했어요.

마지막에 haveFun은 그냥 키가 눌려질 때 글자가 움직이도록 해 봤어요. 심심해서....


KOW님 덕분에 저도 몰랐던 사실을 알게 됬네요.


감사합니다.


반응형

Corona SDK로부터 받은 답변

2012. 4. 18. 07:35 | Posted by 솔웅


반응형

안녕하세요?

제가 이 블로그에서 받은 Corona SDK 와 관련된 질문 댓글 중 제 수준에서 답할 수 없는 것을 두건 Corona SDK에 문의 했었습니다.

오늘 아침 (4.17)에 보냈는데 오후에 답변이 왔네요.

feedback이 정말 좋네요. 고맙게도...


지금부터는 여러분들이 올리는 질문 (코로나 SDK에 대해) 에 더 성실히 답하고 모르는 건 이렇게 Corona SDK에 질문을 할 테니까 질문 많이 많이 올려 주세요.


오늘은 Kow님이 올리신 질문과 이상봉님께서 보내신 질문을 문의했었습니다.


오늘 온 답변 메일은 아래와 같습니다.





Changsoo,


Here are some answers to your questions from one of our team members:
아래 우리 팀원 중 한명이 당신이 보낸 질문에 대한 답변을 해 왔습니다.


1. 2012.03.28  KOW 
    Can I control 'MENU' Button on Android device with Corona SDK?  


You can override the Menu key by using Corona key listener as documented here...
Corona key 리스너를 사용해서 Menu를 오버라이드 할 수 있습니다. 문서는 아래에 있습니다.

 
2. 2012.03.26  Lee,Sangbong
    Regarding Image Sheets. If I use MASK on an object, screen becomes black except the object on Galaxy 2 LTE. There is no problem on other device. 



This sounds like the masking issue that was introduced in build 759 where textures are disappearing on devices with low-end graphics hardware.  It typically happens on devices with whose OpenGL max texture units are 2, the absolute minimum the OpenGL spec allows. We will work on this soon.

이 건은 빌드 759에서 나왔던 이슈 같습니다. low-end graphics 하드웨어에서 디바이스에서 texture가 사라지는 문제였는데요. 이 이슈는 특히  OpenGL max texture units 가 2인 디바이스에서 일어났습니다. 이 건에 대해서는 곧 해결하도록 하겠습니다.

You should be able to work-around this issue by reverting to build #758.

아마 빌드 758로 되돌아 가시면 이 현상은 일어나지 않을 겁니다.

이 상입니다.

이상봉님이 질문하신 내용은 빌드 759 이상에서 나오는 문제 같습니다. 오히려 그 이전 버전인 빌드 758로 돌아가면 그 문제가 없을 거라네요.

그리고 지금 그 버그를 수정중에 있다니까 조만간 그 정된 버전의 Corona SDK를  다운 받아 사용하실 수 있게 될 것 같습니다.

다른 분들도 질문이나 건의 또는 건설적인 의견이 있으면 댓글 달아 주세요.

Corona SDK 측에서 이렇게 확실히 신속하게 응답을 해 주니까 저도 여러분에게 좋은 답변을 드릴 수 있을 것 같습니다.

1번 KOW님의 질문에 대한 답변에서 보라고 했던 document는 제가 곧바로 번역해서 올리겠습니다.
혹시 테스트까지 하면 샘플을 올릴 수도 있겠죠?
아님 여러분 중에서 테스트 해 보신 후 성공하시면 샘플을 보내 주세요.

서로 공유하면서 필요한 자료를 share 하면 많은 도움이 될 것 같습니다.

감사합니다.



추천~~꾸욱~~


반응형


반응형

안녕하세요?


Corona SDK 명예 대사가 된 이후로 제대로 역할을 못하는 것 같네요.

여러분들의 많은 질문에도 답변 못하는 경우가 많구요.


일단 할 수 있는 것 부터 해야겠습니다.


여러분들이 Corona SDK 에 대해서 댓글로 질문 한 것 중 제가 답하기 어려운 것은 Corona SDK에 질문을 토스 하겠습니다.


그리고 답변을 받으면 이 블로그에 그 답변 내용을 올릴께요.


질문 이외에 코로나 SDK와 관련된 어떤 의견이나 제안사항도 마찬가자로 전달하겠습니다.


일단 이번에는 3월달에 올라온 질문 2가지를 Corona SDK CEO 인 Walter 하고 명예대사 담당자인 David 한테 보냈습니다.


아래 그 보낸 메일 내용입니다.


혹시 제가 빠뜨리거나 오래전에 올린 댓글 중에 제가 미처 답변 제대로 못 드린것도 있을 수 있습니다. 그 분들께는 죄송합니다. 제가 너무 일을 미루다가 발생한 일입니다.


지금부터는 정기적으로 질문 사항 정리해서 전달할 계획이니 질문사항이나 의견 있으시면 언제든지 댓글에 달아 주세요.





Dear Walter and David

I am Changsoo Park one of the Ambassador of Corona SDK.
I have blog http://coronasdk.tistory.com and I post Tutorial, DOC, Corona SDK News etc. on that blog in Korean.
Many people visit my blog and ask questions or suggest their opinion for Corona SDK.
I'd like to send you the questions and suggestions once a month and When I get back reply then I will let them know.

I am sending 2 questions at this time. 

Please check it out and reply soon .

1. 2012.03.28  KOW 
    Can I control 'MENU' Button on Android device with Corona SDK?  
2. 2012.03.26  Lee,Sangbong
    Regarding Image Sheets. If I use MASK on an object, screen becomes black except the object on Galaxy 2 LTE. There is no problem on other device. 

Best Regards

Changsoo (Douglas) Park


반응형