- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
当我显示 WebView
时,我没有看到弹出软键盘。硬键盘也不行!
常见的缺点是什么。
我用来访问 WebView
的代码是:
package com.example.blahblah;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;
import android.preference.PreferenceManager;
import android.util.Log;
import android.view.KeyEvent;
import android.view.Window;
import android.webkit.JsResult;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;
public class createAccount extends Activity {
private static final String LOG_TAG = "Create Account";
private WebView mWebView;
private static final String URL = blah_app.urlSelected+"createAccount.html";
private Handler mHandler = new Handler();
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
Toast.makeText(createAccount.this, "URL = " +URL, Toast.LENGTH_SHORT).show();
getWindow().requestFeature(Window.FEATURE_PROGRESS);
setContentView(R.layout.webview);
getWindow().setFeatureInt(Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);
mWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setSavePassword(true);
webSettings.setSaveFormData(true);
webSettings.setJavaScriptEnabled(true);
webSettings.setSupportZoom(true);
final Activity activity = this;
mWebView.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
activity.setProgress(progress * 1000);
}
});
mWebView.addJavascriptInterface(new DemoJavaScriptInterface(), "demo");
mWebView.clearCache(true);
setProgressBarVisibility(true);
mWebView.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Toast.makeText(activity, "Oh no! " + description, Toast.LENGTH_SHORT).show();
}
@Override
public void onPageFinished(WebView view, String url)
{
mWebView.loadUrl("javascript:(function () { " +
"setVariables("+blah_app.numberSelected+",'"+blah_app.urlSelected+"');" +
"})()");
}
});
mWebView.loadUrl(URL);
}
final class DemoJavaScriptInterface {
public void setData(String fname, String lname, String gacct, String phone) {
SharedPreferences prefCreateAccount = PreferenceManager.getDefaultSharedPreferences(createAccount.this);
SharedPreferences.Editor editor = prefCreateAccount.edit();
editor.putString("FirstName", fname);
editor.putString("LastName", lname);
editor.putString("GmailAcct", gacct);
editor.putString("Phone", phone);
editor.commit();
}
DemoJavaScriptInterface() {
}
/**
* This is not called on the UI thread. Post a runnable to invoke
* loadUrl on the UI thread.
*/
public void clickOnAndroid() {
mHandler.post(new Runnable() {
public void run() {
mWebView.loadUrl("javascript:wave()");
}
});
}
}
/**
* Provides a hook for calling "alert" from javascript. Useful for
* debugging your javascript.
*/
final class MyWebChromeClient extends WebChromeClient {
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
Log.d(LOG_TAG, message);
result.confirm();
return true;
}
}
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
startActivity(new Intent(getApplication(), blah_app.class));
return true;
}
return super.onKeyDown(keyCode, event);
}
}
最佳答案
完整的解决方案比 Sana 所拥有的要多一些。它在 Android 网站 (http://code.google.com/p/android/issues/detail?id=7189) 上被记录为一个错误:
webView.requestFocus(View.FOCUS_DOWN);
webView.setOnTouchListener(new View.OnTouchListener()
{
@Override
public boolean onTouch(View v, MotionEvent event)
{
switch (event.getAction())
{
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_UP:
if (!v.hasFocus())
{
v.requestFocus();
}
break;
}
return false;
}
});
关于android - WebView textarea 不弹出键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3460915/
我知道如何在简单的html文本框中删除文本,但是html textareas似乎要复杂得多。而不是value属性,而是将文本放置在之间: . 这就是为什么我在制作onFocus和onBlur
这个问题在这里已经有了答案: text from one textarea should get copy to another textarea and original textarea sh
我实现了一个 在 Elm 中,选项卡缩进和取消缩进,而不是将焦点转移到另一个 HTML 元素。效果很好,除了取消缩进有时会导致选择消失!如果我选择第 5 个字符到第 12 个字符,我按 shift-t
是否可以更改 TextArea 的字体?我需要一个固定宽度的字体来显示一些原始数据,这些数据被格式化为在控制台的列中显示。 最佳答案 您可以使用 CSS 来实现,只需为您的应用程序创建一个主题并添加以
换行符或 pharagraph 在 textarea 输出中不起作用?例如,我在 textarea 中为 pharagraph 使用 enter 但在输出中不起作用?我怎样才能做到这一点? $("#s
这个问题在这里已经有了答案: How to calculate the pixel width of a String in JavaFX? (4 个回答) 6年前关闭。 如何计算 TextArea
我正在尝试使用两个不同的 textarea s 显示相同的代码,但有一个母版和另一个副本。在副本textarea ,我想强调更改,类似于 GitHub 在我们进行一些更改时提供的内容。 我想知道这是否
我需要允许用户突出显示文本(用鼠标选择一个范围),然后我想让他们能够通过下拉右键菜单将某些设置应用于该文本。 我知道后半部分。但是如何获取从 JavafX 的文本区域中选择的文本字符串? 另外,我可以
我使用 TinyMCE。 如果我在我的 textarea(编辑器)中插入另一个 texarea,tinymce 认为这个的结束标记是相关的,所以他关闭了编辑器。所有代码都可以在编辑器之外找到... 你
假设我有两个文本区域... 文本区域 1 文本区域 2 Hi There. 我希望能够将我在文本区域一中输入的文本添加到文本区域二中的文本之后。例如:如果我写“我的名字是乔”。在文本区域一中,它将同
我通过点击一个按钮来实现这个 Bootstrap Modal。但是在点击按钮时,模态出现在屏幕上,除了文本区域字段之外的每个字段都正确显示,按钮代码和文件上传代码在它下面,正在进入文本区域,为什么会这
现在我在获取值时遇到了问题 ~ 我正在执行一个功能,当我单击一个按钮时,它会显示一个模式,并且在其中有一个文本区域。将所有内容写入其中后,单击“确定”按钮,它将使用您编写的文本创建一个新的文本区域。你
我有一个呈现文本区域字段的 HTML 模板和 CSS,但是当单击该字段时,光标从文本区域的中间开始,而不是我期望的从左上角开始。 这不会出现在 IE 中,但会出现在 Chrome 和 FF 中。我还得
我有一个在页面上运行的 TinyMCE 实例,它使我能够编辑现有帖子。我查询数据库,并填充变量 $content与存储的文本。然后我有以下 HTML: Content: " > TinyMCE 显示为
每当有人在 textarea 中按 Enter 键时,我都会调用一个函数.现在我想禁用 new line或 break按下回车键时。 所以new line按下 shift+enter 时应该可以工作。
我有一个带有一些 TextArea 元素的 GUI 来显示信息。由于 GUI 将对 keyevents 使用react,因此我在场景元素中添加了一个 EventHandler。因为我不想为每个文本区域
我想用 jquery 在文本区域中插入图像。 (我知道 img 标签无法插入到文本区域中)。我正在使用tinymce jquery: tinyMCE.init({ mod
为什么这行不通?这里的input类型是text: var name = $("input[name='Event[name]']").serializeArray(); name = name[0].
我正在研究一种解决方案,当您在 TextArea 中键入文本时,它应该通知用户还剩下多少字符需要输入。比如你只能输入200之类的。这很容易制作,但我希望计数器显示在 TextArea 的背景中而不是单
“文本区域类型属性”有什么用? W3foos says this: The type property returns which type of form element a text area i
我是一名优秀的程序员,十分优秀!