2011-02-03 2 views
4

사용자가 오랫동안 텍스트 편집을 누르면 표시되는 항목 목록에 뭔가를 추가 할 수 있습니까? (잘라 내기, 복사 붙여 넣기, 텍스트 선택, 모두 선택, 입력 방법)이 메뉴에 다른 옵션을 추가하고 싶지만 알아낼 수는 없습니다.안드로이드 네이티브 '텍스트 편집'컨텍스트 메뉴에 옵션을 추가하는 방법

이 질문은 here과 중복되어 있으며 첫 번째 답변의 마지막 댓글은 '가능하지만 예쁜 것은 아닙니다'라고 말합니다. 그런 다음 실이 나옵니다.

난 정말 작업 예, 더러운를 참조하거나하지

+0

Android 6.0 이상에서이 기능을 지원합니다. https://developer.android.com/about/versions/marshmallow/android-6.0-changes.html#behavior-text-selection – PsyGik

답변

2

이 그 나타 항목의 목록에 무언가를 추가 할 수 있습니다 :)하고자 할 때 어떤 텍스트 편집의 사용자 긴 프레스? EditText이 활동에 있으면

, 그 onCreateContextMenu()를 통해 할 수 있습니다.

EditText이 내 활동에 없으면 아니오입니다.

여기에이 질문이 중복되어 있으며 첫 번째 답변에 대한 마지막 의견은 '가능하지만 예쁜 것은 아닙니다'라고 말합니다. 그런 다음 실이 나옵니다.

먼저이 게시물은 Android 시대에 거의 영원한 2 살입니다.

두 번째로, Haseman 씨는 자신의 평가에서 부정확하다는 점을 확신합니다.

+0

벌집이 공개되기 전에 답을 얻었습니까? setCustomSelectionActionModeCallback은 어떻습니까? – Selvin

+0

@Selvin : 적어도 일찍부터, 그것은 신뢰할 수 없었다. 나는 'RichEditText'를 위해이 도구를 사용하려고 시도했지만 일부 제조업체에서는 기본적으로이 호출을 무시한다는 것을 알게되었습니다.나는 지난 몇 년 동안 그것을 시도하지 않았기 때문에, 호환성 테스트에서 더 잘 시행되는지 그렇지 않으면 일반적으로 사용하기에 안전 해지는 지 알지 못합니다. – CommonsWare

2

모두 예입니다!

첫째, 당신은 구현 OnCreateContextMenuListener이

public class CMenu implements OnCreateContextMenuListener { 

public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { 

    //Do Something , Like: 

    menu.add(0, 1, 0, "copy"); 
    menu.add(0, 2, 0, "paste"); 
    } 
} 

다음

editText.setOnCreateContextMenuListener(cMenu); 

그것은 지금 ~

1

기존 글고 컨텍스트 메뉴에 좀 더 메뉴 항목을 추가 확인의 클래스를 작성해야 EditText가 활동에있는 경우에만 가능합니다. 이는 onCreateContextMenu()을 통해 수행 할 수 있습니다.

EditText가 당신의 활동에 없다면 불가능합니다.

//

상황에 맞는 메뉴가 당신 글고 치기가 활동하지 않을를 호출 해지고 있지 않은 경우

EditText UserNameEditText = (EditText)findViewById(R.id.usernameEdittext); 
registerForContextMenu(UserNameEditText); 

// 컨텍스트 메뉴를

@Override 
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) 
{ 
    super.onCreateContextMenu(menu, v, menuInfo); 

    if (v.getId()==R.id.usernameEdittext) 
    { 
     menu.add(0, 1, 0, "Fetch New Username"); 
     menu.add(0, 2, 0, "Check For Duplicate"); 
    } 
} 

를 오버라이드 (override) 메뉴 항목을 추가 할 수 있습니다.

+0

더 나은 가독성을 위해 게시물 서식을 고려하십시오. – Anton

관련 문제