gpt4 book ai didi

Android扫码枪输入时屏蔽软键盘和顶部状态栏

转载 作者:撒哈拉 更新时间:2024-10-11 12:20:58 58 4
gpt4 key购买 nike

这是个扫码枪回车输入扫码内容的界面,常用于收银收款等场景 前期踩了很多坑,网上的资料也因为 Android 历史版本不同有各种兼容问题,最后总结了下 在无霸屏设置的 android 设备上使用如下方案可有效避免界面弹出软键盘和现实顶部状态栏问题,环境为 Android 7.1.2 屏蔽软键盘:自动聚焦 的 inputType 设置为 none 隐藏顶部状态:方案一 hideStatusBar 必须在 setContentView 之前,方案二在 styles 中设置 NoActionBar 具体可自行搜索 。

  • AndroidManifest.xml
<activity
    android:name=".MyActivity"
    android:windowSoftInputMode="stateHidden"
    android:exported="false" />
  • activity_my.xml
<EditText
    android:id="@+id/scanInput"
    android:layout_width="0dp"
    android:layout_height="0dp"
    android:focusable="true"
    android:focusableInTouchMode="true"
    android:focusedByDefault="true"
    android:importantForAutofill="no"
    android:inputType="none" />
  • MyActivity.kt
class MyActivity : AppCompatActivity() {
    private lateinit var binding: ActivityMyBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityMyBinding.inflate(layoutInflater)
        hideStatusBar()
        setContentView(binding.root)
        hideSoftKeyboard()
    }

    override fun onResume() {
        super.onResume()
        hideSoftKeyboard()
        hideActionBar()
    }

    private fun hideSoftKeyboard() {
        window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN)
        this.currentFocus?.let { view ->
            val imm = getSystemService(Context.INPUT_METHOD_SERVICE) as? InputMethodManager
            imm?.hideSoftInputFromWindow(view.windowToken, InputMethodManager.RESULT_HIDDEN)
        }
    }

    private fun hideStatusBar() {
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        window.setFlags(
            WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN
        )
    }

    private fun hideActionBar() {
        window.decorView.systemUiVisibility = View.SYSTEM_UI_FLAG_FULLSCREEN
        actionBar?.hide()
    }

}

如有问题或建议,欢迎大家评论区讨论指正! 。

最后此篇关于Android扫码枪输入时屏蔽软键盘和顶部状态栏的文章就讲到这里了,如果你想了解更多关于Android扫码枪输入时屏蔽软键盘和顶部状态栏的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

58 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com