Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
211 views
in Technique[技术] by (71.8m points)

android - Disable EditText Clip board actions in Java/Kotlin

How I can disable text copy and paste action on password kind of fields in Java/Kotlin code?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
fun disableClipboardAction(context : Context, editText: EditText){
            try {
                editText.onFocusChangeListener = View.OnFocusChangeListener { v, hasFocus ->
                    if (hasFocus) {
                        val clipboard: ClipboardManager =
                            context.getSystemService(AppCompatActivity.CLIPBOARD_SERVICE) as ClipboardManager
                        val clipData = ClipData.newPlainText("text", "")
                        clipboard.setPrimaryClip(clipData)
                    }
                }
    
                editText.customSelectionActionModeCallback =
                    object : android.view.ActionMode.Callback {
                        override fun onCreateActionMode(
                            mode: android.view.ActionMode?,
                            menu: Menu?
                        ): Boolean {
                            return false
                        }
    
                        override fun onPrepareActionMode(
                            mode: android.view.ActionMode?,
                            menu: Menu?
                        ): Boolean {
                            return false
                        }
    
                        override fun onActionItemClicked(
                            mode: android.view.ActionMode?,
                            item: MenuItem?
                        ): Boolean {
                            return false
                        }
    
                        override fun onDestroyActionMode(mode: android.view.ActionMode?) {
                        }
    
                    }
            } catch (exception: Exception) {
                exception.printStackTrace()
            }
        }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...