Context Menu 는 View에서 사용자가 길게 터치(Long-Touch)할 경우 보여지는 메뉴이다.

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 에따라 달라짐.

보여지는 Context Menu 를 선택하게 되면 onContextItemSelected 함수가 호출이 되고 이때 선택된 메뉴가 넘어 매개변수(MenuItem)로 오는데 받은 메뉴에 대한 적절한 처리를 해 주면 된다.

public boolean onContextItemSelected( MenuItem  item )
매개변수
MenuItem item : 선택된 Context Menu
반환 값
선택 된 Menu item에 대한 처리 여부



Context Menu for TextView 1

TextView 의 Context Menu

Context Menu for TextView 2

Context Menu의 Sub Menu



Context Menu for ImageView 1

ImageView 의 Context Menu

Context Menu for ImageView 2

Context Menu의 SubMenu



Context Menu for Button 1

Button의 Context Menu 1

Context Menu for Button 2

Button의 Context Menu 2


Posted by NeoDreamer
:
BLOG main image
사람의 발목을 잡는건 '절망'이 아니라 '체념'이고 앞으로 나아가게 하는건 '희망'이 아니라 '의지'다. - 암스 중에서 - by NeoDreamer

공지사항

카테고리

전체보기 (793)
Life Story (1)
Thinking (2)
Nothing (5)
---------------* (0)
Dev Story (701)
Com. Story (80)
IT Story (1)
---------------+ (0)
Etc (2)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

Total :
Today : Yesterday :
05-10 00:00