반응형
출처: https://deque.tistory.com/125?category=984011 [코딩하는 사람]
안드로이드에서 Text를 Select했을 때 나오는 메뉴에 뭔가 추가하고 싶을 수도 있다.
예를 들면,
이런식으로, Important를 꾹~ 눌려서 (Long press) Text를 Select한 뒤에 나오는 메뉴에서
'퀵번역'을 추가 하고 싶을 수 있다.
이런걸 구현하려고 하면 간단하게 함수 하나만 override하면 된다.
@Override
public void onActionModeStarted(final android.view.ActionMode mode) {
Menu menu = mode.getMenu();
menu.add("퀵번역")
.setEnabled(true)
.setVisible(true)
.setOnMenuItemClickListener(item -> {
//해당 메뉴를 눌렸을 때 수행할 작업
return true;
});
super.onActionModeStarted(mode);
}
이렇게 onActionModeStarted를 Override하고
Menu를 얻어온 다음,
menu.add()를 이용해서 새로운 메뉴를 추가하면 된다.
이렇게 하면 기존 메뉴에 있는 기능들도 그대로 쓸 수 있고
내가 넣고싶은 기능을 추가할 수도 있다.
이때 새로운 메뉴의 위치는 젤 왼쪽이 되는데, 그 위치또한 설정할 수 있는 듯 하다.
반응형
'개발 > 안드로이드' 카테고리의 다른 글
Uri.fromFile() 사용 시, FileUriExposedException 발생하는 경우 (0) | 2019.06.11 |
---|---|
RxJava와 Room DB (0) | 2019.05.31 |
Android View Stub (0) | 2019.05.31 |
안드로이드 Picture In Picture (PIP) (0) | 2019.05.31 |
Android Kotlin MVVM패턴으로 간단한 검색 앱 만들기 - 5. SingleLiveEvent, SnackbarMessage (0) | 2019.05.31 |
댓글