13

Pracuję, aby uniknąć cięcia/kopiowania/wklejania w smartfonie (dla tabletu jest w porządku). Jest w porządku w trybie portowym, ale przechodząc do trybu lądowego EditText pokazuje przycisk Dalej. po wybraniu tekstu, następny przycisk zamienia się w przycisk edycji, który ma opcję kopiowania, wycinania i wklejania.Jak uniknąć cięcia/kopiowania/wklejania w smartfonie po obróceniu portu do lądowania na Android4.X?

Czy istnieje sposób wyłączenia wycinania/kopiowania po obrocie, gdy pojawi się przycisk edycji.

Podążam tym łączem. How to disable copy/paste from/to EditText

This image with out text select

After select

+0

Używam inteligentnego telefonu Google Nexus. – Unknown

+0

Brak odpowiedzi na to pytanie. – Unknown

Odpowiedz

-1

@Cobra - zestaw EditText.setEditable(false); w kodzie, lub ustawić tę właściwość w xml, jak również. ta właściwość dobrze, ale jeśli każdym razie to nie będzie działać ..set setFocusable również fałszywy .. ta praca rozwiązanie dla mnie ..

+0

Spróbuję twojej sugestii. – Unknown

+0

Nie działa .. W moim przypadku muszę ustawić wartość za każdym razem, gdy jestem mój edittext.after używając tego nie jestem w stanie dotknąć mojego tekstu edycji. – Unknown

+0

Już wspomniałem, że używam żelki. Może to nie działa w tej wersji. – Unknown

1

myślę, że można to wykorzystać:

http://developer.android.com/reference/android/widget/TextView.html#attr_android:imeOptions

Z flagą:

flagNoAccessoryAction

używany w połączeniu z działaniem niestandardowym, oznacza to, że akcja nie powinna być dostępna jako akcesorium przycisku gdy metoda wejście jest na pełnym ekranie. Zauważ, że ustawienie tej flagi może oznaczać przypadki, w których akcja jest po prostu niedostępna dla użytkownika. Ustawienie tego na ogół oznacza, że ​​myślisz, że edytowanie tekstu jest ważniejsze niż akcja, którą podałeś. Odpowiada IME_FLAG_NO_ACCESSORY_ACTION.

+0

Dzięki za odpowiedź. testowałem to, ale zgodnie z moją funkcjonalnością powinien tam być przycisk Dalej. Po użyciu nic nie ma tylko tekstu. – Unknown

+0

Przez przycisk tam myślę, że nie można zatrzymać kopiowania wklej, ponieważ jest zastąpiony przez te funkcje, jak tylko wybierzesz tekst .. – neteinstein

+0

To jest domyślne zachowanie żelki. Chcemy następny przycisk, ale nie chcemy tego dalej przycisk zmień na Edytuj po wybraniu tekstu. – Unknown

1

Chciałbym nalegać, aby wyłączyć długie kliknięcie na EditText, ponieważ przycisk Edit pojawia się po długim naciśnięciu na wybrany tekst w EditText.

et_text.setLongClickable(false); 

Ponadto, można wyczyścić ClipboardManager, tak, że jeśli już coś, co jest już skopiowane do schowka zostaną usunięte za pomocą,

ClipboardManager manager = (ClipboardManager) 
           getSystemService(Context.CLIPBOARD_SERVICE); 
manager.setText(""); 
+0

dzięki za odpowiedź .i think ClipboardManger jest przestarzałe w wersji 3.2 lub wyższej. – Unknown

+0

i longclickable false również nie działa ... nie wiem dlaczego. – Unknown

+0

Przestarzałą klasą jest 'import android.text.ClipboardManager', ale możesz użyć' import android.content.ClipboardManager', również ustawienie długiego kliknięcia false powinno działać w EditText. –

0

Spróbuj ..

your_edit_text.setCustomSelectionActionModeCallback(new 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; 
    } 
}); 
0

Spróbuj użyć tych dwóch linii. To może pomóc:

EditText.setFocusable(false); 
EditText.setFocusableInTouchMode(false);