2016-03-28 19 views
2

Kendi özel görünümümü uygulamak (bir menü öğesini şişirmemek istemiyorum), contextMenu'nun her başlatılışında görünecek bir araç çubuğu kullanmayı planlıyorum ve bittiğinde gizleyin.CAB'yi kaldırın, ancak webview metin seçimini koruyun

sorundur: orada sadece/temizlemek i `Bugüne kadar çalıştığınız şeyi varsayılan actionMode menüsünden

üzerinde başka menü şişirmek için NASIL gösteren cevap:

->Use a custom contextual action bar for WebView text selection

geçersiz kılma Geri dönme yanlış değerini true olarak değiştirmek, istenen davranışla sonuçlanamaz, yani kabini gizlemez.

Geçerli seçimi devre dışı bıraktığından, OnLongClick'u geçersiz kılmak da bir seçenek değildir.

+0

Aynı şeyi anlamaya etmeye çalışıyorum oynamak. Seninle aynı düşünce sürecinden geçtim. Bunu yapmanın kolay bir yolu yoktur. –

cevap

1

(Android L + sadece üzerinde ) benim için çalıştı Ayrıca ben değildim Use a custom contextual action bar for WebView text selection

esinlenerek aktivite

@Override 
public void onActionModeStarted(ActionMode mode) { 
    if (mActionMode == null) { 
     mActionMode = mode; 
     Menu menu = mode.getMenu(); 
     // Remove the default menu items (select all, copy, paste, search) 
     menu.clear(); 
    } 
    Toast.makeText(this, "onActionModeStarted", Toast.LENGTH_SHORT).show(); 
    super.onActionModeStarted(mode); 

} 

@Override 
    public void onActionModeFinished(ActionMode mode) { 
     mActionMode = null; 
     Toast.makeText(this, "onActionModeFinished", Toast.LENGTH_SHORT).show(); 
     super.onActionModeFinished(mode); 
    } 

gelen bağlam İşlem Çubuğu tüm menü öğelerini temizleyerek tek yolu popupwindow veya dialogları veya diyalog parçalarını kullanarak özel menüyü uygulayabilir.

Yani basit bir çerçeve düzeni Web görünümü ile koyun ve görünürlük ve marj

+0

Daha fazla metin seçerseniz (yani metin imlecini seçin) işe yaramazsa, tüm varsayılan menü tekrar görüntülenir. –

İlgili konular