Android如何自动弹出软键盘?

Android如何自动弹出软键盘?

  • 方法1
  • 方法2
    • [步骤1 添加windowSoftInputMode属性](#步骤1 添加windowSoftInputMode属性)
    • [步骤2 请求textinput焦点](#步骤2 请求textinput焦点)

方法1

直接在resume中控制弹出。不过需要一定的延时提交,因为需要保证当前的窗口是正在被服务的窗口。

java 复制代码
@Override
protected void onResume() {
    super.onResume();
    // 显示软键盘
    textInputEditText.postDelayed(() -> {
        textInputEditText.requestFocus();
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        if (imm != null) {
            imm.showSoftInput(textInputEditText, InputMethodManager.SHOW_IMPLICIT);
        }
    }, 500);
}

显示不成功的log:

java 复制代码
Ignoring showSoftInput() as view=com.google.android.material.textfield.TextInputEditText{5ecc3f4 VFED..CL. .F...... 0,0-1074,146 #7f0801c0 app:id/textview aid=1073741824} is not served.

方法2

系统自动管理输入法显示

步骤1 添加windowSoftInputMode属性

  • stateVisible: 当页面打开时,如果有焦点的输入框,自动显示输入法。
  • adjustResize:键盘弹出时,Activity 内容会自动上移避免被遮挡。
xml 复制代码
<activity android:name=".SearchActivity"
    android:windowSoftInputMode="stateVisible|adjustResize"/>

步骤2 请求textinput焦点

这个可以放在onCreate或onResume都可以。

java 复制代码
 textInputEditText.requestFocus();

或:

加上

xml 复制代码
<com.google.android.material.textfield.TextInputEditText
    android:id="@+id/textview"

    android:layout_marginTop="30dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="hint" >
    <requestFocus />  
</com.google.android.material.textfield.TextInputEditText>
相关推荐
Digitally3 小时前
从安卓手机切换到iPhone:好处、缺点及4种方法
android·智能手机·iphone
2501_915921433 小时前
iOS App 混淆与热更新兼容实战 混淆后如何安全可靠地推送热修复(Hotfix)与灰度回滚
android·ios·小程序·https·uni-app·iphone·webview
木易 士心3 小时前
Jetpack Room 从入门到精通
android·数据库
2501_915918414 小时前
iOS 26 软件兼容性大检查,哪些 App 出问题、API 变动要注意、旧功能不支持兼容性测试全流程
android·ios·小程序·https·uni-app·iphone·webview
2501_915909064 小时前
iOS 26 系统流畅度深度评测 Liquid Glass 动画滑动卡顿、响应延迟、机型差异与 uni-app 优化策略
android·ios·小程序·uni-app·cocoa·iphone·webview
2501_915909064 小时前
App 代上架全流程解析 iOS 应用代上架服务、苹果应用发布步骤、ipa 文件上传与 App Store 审核经验
android·ios·小程序·https·uni-app·iphone·webview
2501_916013744 小时前
iOS 开发指南全解析 从入门到应用上架、Xcode 使用教程、ipa 打包上传与 App Store 审核实战经验
android·macos·ios·小程序·uni-app·iphone·xcode
咖啡の猫4 小时前
Android开发-Application
android
00后程序员张4 小时前
iOS 混淆与反调试反 Hook 实战,运行时防护、注入检测与安全加固流程
android·安全·ios·小程序·uni-app·iphone·webview