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


相关推荐: html5如何实现懒加载图片_ intersectionobserver api用法【教程】  Laravel如何配置和使用缓存?(Redis代码示例)  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  Python自动化办公教程_ExcelWordPDF批量处理案例  android nfc常用标签读取总结  实现点击下箭头变上箭头来回切换的两种方法【推荐】  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  千库网官网入口推荐 千库网设计创意平台入口  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  C语言设计一个闪闪的圣诞树  为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】  如何在IIS7中新建站点?详细步骤解析  如何用美橙互联一键搭建多站合一网站?  Laravel如何实现API版本控制_Laravel版本化API设计方案  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  中国移动官方网站首页入口 中国移动官网网页登录  nodejs redis 发布订阅机制封装实现方法及实例代码  购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  JS中页面与页面之间超链接跳转中文乱码问题的解决办法  如何用AWS免费套餐快速搭建高效网站?  Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比  详解Android——蓝牙技术 带你实现终端间数据传输  在线制作视频的网站有哪些,电脑如何制作视频短片?  利用JavaScript实现拖拽改变元素大小  Laravel如何发送系统通知?(Notification渠道示例)  php 三元运算符实例详细介绍  js实现获取鼠标当前的位置  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  JavaScript模板引擎Template.js使用详解  香港服务器部署网站为何提示未备案?  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  如何在建站之星网店版论坛获取技术支持?  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  Linux网络带宽限制_tc配置实践解析【教程】  Windows Hello人脸识别突然无法使用  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  ,在苏州找工作,上哪个网站比较好?  Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  JS实现鼠标移上去显示图片或微信二维码  中山网站制作网页,中山新生登记系统登记流程?  潮流网站制作头像软件下载,适合母子的网名有哪些?  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  🚀拖拽式CMS建站能否实现高效与个性化并存?