2017-02-20 3 views
0

Ich greife auf mein Gerät mit externe Tastatur. Als eine Voraussetzung, ich muss jedes kopieren/einfügen in Android EditText-Box in meiner App deaktivieren. Für Geräts Kopieren/Einfügen, Ausgabe Handling, verwenden wir unter CodeExterne Tastatur Problem - Kopieren/Einfügen in Editiertext für Android verhindern

public class MyEditText extends EditText{ 
    --- 
    boolean canPaste() { 
     return false; 
    } 
    --- 
    private void init() { 
     this.setCustomSelectionActionModeCallback(new ActionModeCallbackInterceptor()); 
     this.setLongClickable(false); 
     this.addTextChangedListener(mTextWatcher); 
    } 

    private class ActionModeCallbackInterceptor implements ActionMode.Callback { 
     public boolean onCreateActionMode(ActionMode mode, Menu menu) { return false; } 
     public boolean onPrepareActionMode(ActionMode mode, Menu menu) { return false; } 
     public boolean onActionItemClicked(ActionMode mode, MenuItem item) { return false; } 
     public void onDestroyActionMode(ActionMode mode) {} 
    } 
} 
+0

http://stackoverflow.com/a/29138389/7320259 überprüfen Sie diese –

+0

Mögliche Duplikat [Wie Kopieren/Einfügen deaktivieren von/bis EditText] (http://stackoverflow.com/questions/6275299/how-to-disable-copy-paste-von-zu-edittext) –

Antwort

0

Sie müssen EditText nicht verlängern, wenn Sie API-Level 11 oder höher verwenden, dann können Sie Kopieren, Einfügen, Ausschneiden stoppen und benutzerdefinierte Kontextmenüs von erscheinen durch.

edittext.setCustomSelectionActionModeCallback(new ActionMode.Callback() { 

     public boolean onPrepareActionMode(ActionMode mode, Menu menu) { 
      return false; 
     } 

     public void onDestroyActionMode(ActionMode mode) {     
     } 

     public boolean onCreateActionMode(ActionMode mode, Menu menu) { 
      return false; 
     } 

     public boolean onActionItemClicked(ActionMode mode, MenuItem item) { 
      return false; 
     } 
    }); 

(Sourced from Zain Ali's answer to this existing question)

+0

Hallo @Alvin, ich bin auf der Suche nach der Tastatur-Accessibility. Ich habe Ihren vorgeschlagenen Code bereits hinzugefügt, aber auch noch Text mit der Tastatur Strg + v einfügen können. – Pankaj

Verwandte Themen