如何在 Cordova Android 应用程序中禁用复制粘贴、拼写检查、自动完成
Posted
技术标签:
【中文标题】如何在 Cordova Android 应用程序中禁用复制粘贴、拼写检查、自动完成【英文标题】:How to disable copy paste,spellcheck,autocomplete in Cordova Android application 【发布时间】:2015-12-17 18:30:33 【问题描述】:功能?用户输入的文本会自动完成。
【问题讨论】:
您可以添加一些 css 规则来禁用复制文本 -- ***.com/questions/826782/… @MuhammadUsman - 我尝试通过使用 jQuery 'paste' 和修剪多余的字符来限制它,但需要进行大量操作,因为我必须验证很多字符。这是一个银行应用程序。传递任何无效数据意味着脏负载因此服务器完全拒绝它 【参考方案1】: $('input').bind("contextmenu", function (e)
e.preventDefault();
);
如果您的应用中没有使用上下文菜单功能,请尝试此代码,否则上下文菜单功能将停止工作
【讨论】:
【参考方案2】: **Use below code:**
<style type="text/css">
*:not(input):not(textarea)
-webkit-user-select: none; /* disable selection/Copy of UIWebView */
-webkit-touch-callout: none; /* disable the ios popup when long-press on a link */
</style>
**If you want Disable only anchor button tag use this.**
a -webkit-user-select: none; /* disable selection/Copy of UIWebView */
-webkit-touch-callout: none; /* disable the IOS popup when long-press on a link */
【讨论】:
【参考方案3】:所以,我不知道您建议的答案是否有效。他想知道,如何在 Cordova 应用程序中停用此功能。您发布本机代码的目的是什么?
正常的input
字段没有停用会如下所示:
<input id="username" type="text" placeholder="Username">
要停用这些东西,只需编辑它,它看起来像这样:
<input id="username" type="text" placeholder="Username" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false">
希望有所帮助!
【讨论】:
【参考方案4】:@Tasos 在他的评论中所说的是有效的,如果您希望在应用中禁用 所有 用户选择,您可以使用以下问题的答案:Disabling text selection in PhoneGap
我到处寻找帮助。这终于对我有用了。
public class MainActivity extends DroidGap @Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); super.loadUrl("file:///android_asset/www/index.html"); super.appView.setOnLongClickListener(new View.OnLongClickListener() public boolean onLongClick(View v) return true; );
setOnClickListener 具有魔力。确保你把这个 在您调用 super.loadUrl 之后。
【讨论】:
【参考方案5】:我不知道 javascript 和 Cordova,但在 Android 代码中你可以试试这个。
要求 API 级别 11 或以上。
edittext.setCustomSelectionActionModeCallback(new ActionMode.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;
);
从 onCreateActionMode(ActionMode, Menu) 返回 false 将阻止启动操作模式(全选、剪切、复制和粘贴操作)。
【讨论】:
以上是关于如何在 Cordova Android 应用程序中禁用复制粘贴、拼写检查、自动完成的主要内容,如果未能解决你的问题,请参考以下文章
如何在 MFP 8 cordova 应用程序(Android/iOS)中获取实际的用户代理
如何限制插件在android / cordova中切换后置/后置摄像头
如何在Android中找到崩溃Cordova应用程序的内容?