✨기본 형식
widget.newButton( options )
✨문법( options 부분에 들어갈 것들 )
- 이하의 요소를 등호(=)로 할당해준다.
- ( ) 괄호 안에 { } 괄호로 묶어서 작성한다. (응용 예시 참고)
- 각 요소를 병기할 때는 콤마(,)로 나눈다. 엔터로 행을 바꿔도 잘 인식된다.
id
:: 이 오브젝트를 가리키는 고유한 이름. (예: id = "button1")width, height
:: 이 오브젝트의 가로 · 세로 길이defaultFile
:: 버튼을 누르지 않았을 때 보여줄 이미지overFile
:: 버튼을 눌렀을 때 보여줄 이미지onPress
:: 리스너(주로 함수)를 할당해준다. 이 버튼이 눌리는 순간 실행될 작업.onRelease
:: 리스너(주로 함수)를 할당해준다. 이 버튼을 눌렀다가 떼는 순간 실행될 작업.onEvent
:: 리스너(주로 함수)를 할당해준다. 이 버튼을 누르는 동안 실행될 작업. (onPress+onRelease)
✨응용
-- 코드 최상단에 "widget" 라이브러리를 불러와야 함
local widget = require( "widget" ) -- 새로 불러온 widget 라이브러리
local composer = require( "composer" ) -- 기본적으로 있는 부분
local scene = composer.newScene() -- 기본적으로 있는 부분
.
.
.
-- function scene:create( event ) 아래 본인이 원하는 위치에 작성
local button = widget.newButton({
defaultFile = "image/buttonDown.PNG",
width = 700, height = 400,
overFile = "image/buttonDown.PNG",
onRelease = panEvent })
-- 이 버튼의 경우, 눌렀다가 뗄 때 panEvent라는 함수를 실행시킨다. (별도로 작성)
✨그 외
name의 사용법
오브젝트이름.name = "이름"
- 주로 배열 요소 하나하나에 유의미한 명칭을 붙일 때 사용한다. (예: button[1]은 "left", button[2]는 "right")
- if 문에서 배열 요소를 처리하기가 용이해진다.
- 만약 클릭된 오브젝트의 이름을 리턴받고자 한다면
event.target.name
으로 받아온다.