要禁止Android應用中的復制事件,你可以使用以下方法之一:
android:textIsSelectable="false"
屬性,這將禁用文本的選擇和復制功能。<TextView
android:id="@+id/textView"
android:text="This text cannot be copied"
android:textIsSelectable="false"
... />
android.text.method.ArrowKeyMovementMethod
類或 android.text.method.MovementMethod
接口來阻止文本選擇和復制:TextView textView = findViewById(R.id.textView);
textView.setText("This text cannot be copied");
textView.setMovementMethod(null);
TextView
子類,并重寫 onTextContextMenuItem()
方法:public class NonCopyableTextView extends TextView {
// ...
@Override
public boolean onTextContextMenuItem(int id) {
// 屏蔽復制事件
return id == android.R.id.copy || super.onTextContextMenuItem(id);
}
}
然后在布局文件中使用 NonCopyableTextView
替代 TextView
:
<com.example.myapplication.NonCopyableTextView
android:id="@+id/textView"
android:text="This text cannot be copied"
... />
這些方法可以禁止在應用中復制文本和觸發復制事件。請注意,這些方法只能限制用戶通過長按文本進行復制,無法完全阻止其他途徑復制文本,如使用截屏等方式。