こんにちは。YOSHITAKA(@YOSHITA19704216)です。
- テキストボックスのコピペ禁止の方法がわかります。
Contents
【Android Studio&Kotlin】テキストボックスの長押しでコピペを禁止する方法
事前準備
- エディットテキストを設定しておいてください。
activity_main.xml
重要なのは以下の部分です。
android:longClickable="false"
メインのlayoutフォルダのxmlファイルを変更していきます。
<EditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height="50dp" android:longClickable="false"/>
- 長押しを禁止にしましょう。
MainActivity.kt
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) //コピペ禁止設定 editText.disableCopyPaste() } private fun EditText.disableCopyPaste() { isLongClickable = false setTextIsSelectable(false) customSelectionActionModeCallback = object : ActionMode.Callback { override fun onCreateActionMode(mode: ActionMode?, menu: Menu): Boolean { return false } override fun onPrepareActionMode(mode: ActionMode?, menu: Menu): Boolean { return false } override fun onActionItemClicked(mode: ActionMode?, item: MenuItem): Boolean { return false } override fun onDestroyActionMode(mode: ActionMode?) {} } }
EditText.disableCopyPasteの中はひとまとめっぽいです。こちらは参考にしたものなので詳しくは色々と動作を検証してみてください。
まとめ
今回は自テキストボックスの長押しでコピペを禁止する方法についてお伝えしました。
※プログラミングは習得中ですので、参考程度に記事を読んでください。
参考はこちらです。
https://stackoverflow.com/questions/6275299/how-to-disable-copy-paste-from-to-edittext