Context Menu 는 View에서 사용자가 길게 터치(Long-Touch)할 경우 보여지는 메뉴이다.
Context Menu 를 사용하기 위해서는 View 를 registerForContextMenu 함수를 이용하여 Context Menu 를 호출 할 수 있도록 등록하여 주어야 한다.
View 를 registerForContextMenu 를 이용하여 등록하면 해당 View 에서 사용자가 Long-Touch 를 하게되면 onCreateContextMenu 함수가 호출이 된다. 이때 넘겨 받은 View 개체에 따라서 적절한 Menu를 만들어 주면 만들어진 Menu가 보여지게 된다. Context Menu 는 서브 메뉴와 Checkable Menu 를 지원한다.
보여지는 Context Menu 를 선택하게 되면 onContextItemSelected 함수가 호출이 되고 이때 선택된 메뉴가 넘어 매개변수(MenuItem)로 오는데 받은 메뉴에 대한 적절한 처리를 해 주면 된다.
Context Menu 를 사용하기 위해서는 View 를 registerForContextMenu 함수를 이용하여 Context Menu 를 호출 할 수 있도록 등록하여 주어야 한다.
registerForContextMenu( View v );
View 를 registerForContextMenu 를 이용하여 등록하면 해당 View 에서 사용자가 Long-Touch 를 하게되면 onCreateContextMenu 함수가 호출이 된다. 이때 넘겨 받은 View 개체에 따라서 적절한 Menu를 만들어 주면 만들어진 Menu가 보여지게 된다. Context Menu 는 서브 메뉴와 Checkable Menu 를 지원한다.
public void onCreateContextMenu( ContextMenu menu,
View v, ContextMenu.ContextMenuInfo menuInfo )
매개변수
ContextMenu menu : 보여지게 될 menu 개체
View v : Context Menu 를 소유한 View 개체
ContextMenu.ContextMenuInfo menuInfo : menu에 대한추가 적인 정보로 내용은 view 에따라 달라짐.
View v : Context Menu 를 소유한 View 개체
ContextMenu.ContextMenuInfo menuInfo : menu에 대한추가 적인 정보로 내용은 view 에따라 달라짐.
보여지는 Context Menu 를 선택하게 되면 onContextItemSelected 함수가 호출이 되고 이때 선택된 메뉴가 넘어 매개변수(MenuItem)로 오는데 받은 메뉴에 대한 적절한 처리를 해 주면 된다.
public boolean onContextItemSelected( MenuItem item )
매개변수
매개변수
MenuItem item : 선택된 Context Menu
반환 값
선택 된 Menu item에 대한 처리 여부
TextView 의 Context Menu |
Context Menu의 Sub Menu |
ImageView 의 Context Menu |
Context Menu의 SubMenu |
Button의 Context Menu 1 |
Button의 Context Menu 2 |
'Dev Story > Android' 카테고리의 다른 글
[Android Dev.] 맛있는 토스트 메세지 뿌리기~~ Toast (1) | 2010.04.07 |
---|---|
[Android Dev.] Context Menu 구성하기 (1) | 2010.04.06 |
[Study Note] 옵션 메뉴 다루기 (0) | 2010.04.04 |
[Study Note] Options 메뉴 제어하기~~ (0) | 2010.04.03 |
[Study Note] 코드 또는 XML 리소스를 이용한 Options 메뉴 구현하기 (0) | 2010.04.02 |