달력

062017  이전 다음

  •  
  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  •  
크리에이티브 커먼즈 라이선스
Creative Commons License

이번 시간은 Sencha Touch 에서 제공하는 Ext.MessageBox 에 대해서 알아보자. 크게 어려운 부분은 없으니 간략히 설명하고자 한다.

우선 기본적으로 제공하는 메세지의 종류는 크게 3개로 볼 수 있다.

1.alert - 간단한 정보만 표시해주는 단순한 알림 역활을 하며, ok 버튼을 가지고 있다.

2.confirm - 무엇인가를 요구하는 질문 형태의 알림 역활을 하며, yes, no버튼을 가지고 있다.

3.prompt - 사용자로 하여금 입력을 요구하는 메세지 박스이다. ok, cancel 버튼을 지니고 있다.

그렇다면 각각의 경우에 대해 코드와 실행 결과를 통해 살펴보도록 하자.

___________________________________________________________________________________________

1. alert

___________________________________________________________________________________________

2. confirm

아마 필자의 부족한 의견으로는 confirm을 사용도가 가장 크다고 생각이 든다. 아마 confirm 함수의 3번째 인자 Ext.emptyFn 이 궁금할 것으로 생각된다. Ext.emptyFn은 어떠너 콜백 함수도 호출하지 않는다는 소리다. 즉 위의 예제에서는 yes, no 아무거나 클릭해도 그냥 메세지박스만 사라지고 아무런 일이 일어나지 않는다. 하지만 분명히 많은 경우가 confirm으로 질문을 던지고 그것에 맞는 응답을 해주어야 하는 것이 일반적일 것이다. 그렇다면 3번째 인자넣는 부분에 사용자가 만든 함수를 추가해주면 그 함수가 호출되게 된다. 아래의 소스코드를 보면 이해가 쉬울 것이다.

정리해서 말해보자면 종료하시겠습니까? 라는 물음에 대한 yes, no 를 클릭하게 되면 3번째 인자의 함수가 호출되게 되는 것이다. 하지만 여기서 의문점이 생길 것이다. 그렇다면 사용자가 yes 버튼을 눌렀는지 no 버튼을 눌렀는지 구분을 할 수 있어야 할 것이다. 기본적으로 confirm이 제공하는 callback 함수에는 인자로 사용자가 클릭한 yes, no 의 인자를 받을 수 있다. 아래의 소스코드를 살펴보면 이해가 쉬울 것이다.

자동적으로 string 으로 넘어오게 되어서 사용자가 yes, no인지에 따라 각각 처리를 해줄 수 있다.

___________________________________________________________________________________________

3. prompt


prompt 역시 크게 어려운 것이 없을 것이라 생각한다.


 

신고
Posted by 오사쯔안녕

티스토리 툴바