Android 软键盘状态并隐藏输入法的实例

发布时间 - 2026-01-11 03:06:08    点击率:

Android 软键盘状态并隐藏输入法的实例

1 软键盘状态的切换 

2 强制隐藏输入法键盘

MainActivity如下:

package cc.c; 
 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.view.inputmethod.InputMethodManager; 
import android.widget.Button; 
import android.widget.EditText; 
import android.app.Activity; 
import android.content.Context; 
/** 
 * Demo描述: 
 * 1 软键盘状态的切换 
 * 2 强制隐藏输入法键盘 
 */ 
public class MainActivity extends Activity { 
  private EditText mEditText; 
  private Button mButton; 
  private Context mContext; 
  @Override 
  protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    init(); 
  } 
   
  private void init(){ 
    mContext=this; 
    mEditText=(EditText) findViewById(R.id.editText); 
    mButton=(Button) findViewById(R.id.button); 
    mButton.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View v) { 
        //toggleInput(mContext); 
        hideInput(mContext,mEditText); 
      } 
    }); 
  } 
   
  /** 
   * 切换软键盘的状态 
   * 如当前为收起变为弹出,若当前为弹出变为收起 
   */ 
  private void toggleInput(Context context){ 
    InputMethodManager inputMethodManager = 
    (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE); 
    inputMethodManager.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); 
  } 
   
  /** 
   * 强制隐藏输入法键盘 
   */ 
  private void hideInput(Context context,View view){ 
    InputMethodManager inputMethodManager = 
    (InputMethodManager)context.getSystemService(Context.INPUT_METHOD_SERVICE); 
    inputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), 0); 
  } 
 
 
} 

main.xml如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  xmlns:tools="http://schemas.android.com/tools" 
  android:layout_width="match_parent" 
  android:layout_height="match_parent" 
  android:paddingBottom="@dimen/activity_vertical_margin" 
  android:paddingLeft="@dimen/activity_horizontal_margin" 
  android:paddingRight="@dimen/activity_horizontal_margin" 
  android:paddingTop="@dimen/activity_vertical_margin" 
  tools:context=".MainActivity" > 
 
  <EditText 
    android:id="@+id/editText" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerInParent="true" 
    android:hint="Input here" /> 
 
  <Button 
    android:id="@+id/button" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@id/editText" 
    android:layout_centerHorizontal="true" 
    android:layout_marginBottom="15dp" 
    android:hint="Button" /> 
 
</RelativeLayout> 

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Android  # 软键盘  # Android软键盘并隐藏切换  # Android 点击屏幕空白处收起输入法软键盘(手动打开)  # Android自定义输入法软键盘  # 弹出  # 如有  # 希望能  # 谢谢大家  # 疑问请  # private  # extends  # mContext  # mButton  # mEditText  # content  # Activity  # app  # public  # Demo  # Context  # layout  # setContentView  # main  # findViewById 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  如何快速重置建站主机并恢复默认配置?  Android okhttputils现在进度显示实例代码  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  手机网站制作与建设方案,手机网站如何建设?  网站页面设计需要考虑到这些问题  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  如何用AI帮你把自己的生活经历写成一个有趣的故事?  图册素材网站设计制作软件,图册的导出方式有几种?  昵图网官方站入口 昵图网素材图库官网入口  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  Laravel如何使用Service Container和依赖注入?(代码示例)  如何在Windows虚拟主机上快速搭建网站?  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  Android中AutoCompleteTextView自动提示  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  如何快速搭建虚拟主机网站?新手必看指南  如何快速搭建二级域名独立网站?  新三国志曹操传主线渭水交兵攻略  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  JS碰撞运动实现方法详解  iOS UIView常见属性方法小结  python中快速进行多个字符替换的方法小结  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  制作电商网页,电商供应链怎么做?  如何获取PHP WAP自助建站系统源码?  详解Android中Activity的四大启动模式实验简述  ,交易猫的商品怎么发布到网站上去?  如何在Ubuntu系统下快速搭建WordPress个人网站?  EditPlus中的正则表达式 实战(2)  如何用美橙互联一键搭建多站合一网站?  香港服务器WordPress建站指南:SEO优化与高效部署策略  香港服务器网站卡顿?如何解决网络延迟与负载问题?  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  音响网站制作视频教程,隆霸音响官方网站?  如何快速登录WAP自助建站平台?  Laravel集合Collection怎么用_Laravel集合常用函数详解  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  *服务器网站为何频现安全漏洞?  IOS倒计时设置UIButton标题title的抖动问题  如何制作一个表白网站视频,关于勇敢表白的小标题?  node.js报错:Cannot find module &#39;ejs&#39;的解决办法  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  如何在云指建站中生成FTP站点?  如何在建站主机中优化服务器配置?  Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  如何用AWS免费套餐快速搭建高效网站?