怎么打开软键盘(软键盘打开快捷键)


话不多说,直接看代码

第一步:在AndroidManifest.xml中对应的activity中加入代码

 // adjustResize 这个属性表示Activity的主窗口总是会被调整大小来保证软键盘的显示空间
android:windowSoftInputMode="adjustResize"

第二步:

在实例化WebView对象后添加代码,

webView.requestFocus(View.FOCUS_DOWN);// 获取焦点  或者使用 webView.requestFocus()同样的效果
webView.setEnabled(true);  //  这里如果设置false, 则点击h5页面中的输入框时不能唤起软键盘

怎么打开软键盘

这里需要注意一下, 因为开始的时候我只写了第一句代码,结果能获取焦点但是就是不弹出输入法, 后来才发现因为我将setEnabled 设置成false了,导致时间失效:

setEnabled 作用:

设置为false,该控件永远不会活动,不管设置为什么属性,都无效;

设置为true,表明激活该控件,控件处于活动状态,处于活动状态,就能响应事件了,比如触摸、点击、按键事件等;

setEnabled就相当于总开关一样,只有总开关打开了,才能使用其他事件。

接下来放出我项目的代码给大家借鉴下

layout 文件:



    
    

activity 文件:

package com.lidou.quke.activity.me;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.webkit.WebChromeClient;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import com.lidou.base.utils.StringUtils;
import com.lidou.base.view.TitleView;
import com.lidou.quke.R;
import com.lidou.quke.activity.BusinessActivity;
public class CommonWebViewActivity extends BusinessActivity {
    private TitleView mTitleView;
    private WebView mCommonWebView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_common_web_view);
        initView();
        Intent intent = getIntent();
        String titleName = intent.getStringExtra("titleName");
        String urlString = intent.getStringExtra("urlString");
        mTitleView.setTitleText(titleName);
        mTitleView.setOnTitleViewClickListener(this);
        WebView webView = (WebView) findViewById(R.id.commonWebView);
        webView.requestFocus();//   .requestFocus(View.FOCUS_DOWN);// 获取焦点
        webView.setEnabled(true);  //  这里如果设置false, 则点击h5页面中的输入框时不能唤起软键盘
        webView.getSettings().setJavaScriptEnabled(true);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            webView.getSettings().setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
        }
        webView.getSettings().setTextZoom(40);
        webView.getSettings().setBlockNetworkImage(false); //设置网页在加载的时候暂时不加载图片
        webView.setVerticalScrollBarEnabled(true);
        webView.setHorizontalScrollBarEnabled(false);
        webView.setScrollBarStyle(View.SCROLLBARS_OUTSIDE_OVERLAY);
        webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
        webView.setWebChromeClient(new WebChromeClient() {
        });
        webView.setWebViewClient(new WebViewClient());
        if (!StringUtils.isEmpty(urlString))
            webView.loadUrl(urlString);
    }
    private void initView() {
        mTitleView = findViewById(R.id.titleView);
        mCommonWebView = findViewById(R.id.commonWebView);
    }
}

效果图:

本文收集自互联网,如果发现有涉嫌侵权或违法违规的内容,请联系6532516@qq.com以便进行及时清除。
分享到