小编Ste*_*han的帖子

Android:以编程方式检测设备是否已连接硬件触摸屏

我需要编写一个脚本来检测物理触摸屏是否在启动时连接到我的Android设备.我尝试/dev/input通过adb 列出文件夹的内容,并获得以下输出:

root@q88:/dev/input # ls
event0
event1
event2
event3
event4
mice
Run Code Online (Sandbox Code Playgroud)

如果我没有弄错的话,请event0识别触摸屏,但在两种情况下都可以看到触摸屏是否已连接.
有没有办法检测触摸屏是否连接到设备?

提前致谢.

android touchscreen

21
推荐指数
1
解决办法
1000
查看次数

Android:检测导航栏的可见性

如何检测导航栏的存在并将其隐藏?

在我的onCreate()I调用hideNavigationBar()方法中隐藏导航栏,然后我注册一个监听器以隐藏导航栏,每当用户触摸屏幕上的文档报告的任何位置时它就变得可见.当触摸事件后导航栏变为可见hideNavigationBar()时,侦听器再次调用该方法,但它没有效果,该栏仍然可见.

这是我的onCreated()方法:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        hideNavigationBar();

        View decorView = getWindow().getDecorView();
        decorView.setOnSystemUiVisibilityChangeListener
                (new View.OnSystemUiVisibilityChangeListener() {
                    @Override
                    public void onSystemUiVisibilityChange(int visibility) {
                        if ((visibility & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
                            Toast.makeText(getApplicationContext(), "Visible", Toast.LENGTH_SHORT).show();
                            hideNavigationBar();
                        } else {
                            Toast.makeText(getApplicationContext(), "Not visible", Toast.LENGTH_SHORT).show();
                        }
                    }
                });
    }
Run Code Online (Sandbox Code Playgroud)

这是我的hideNavigationBar()方法:

 private void hideNavigationBar() {

        Toast.makeText(getApplicationContext(), "hideNavigationBar()", Toast.LENGTH_SHORT).show();

        View decorView = getWindow().getDecorView();
        int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_FULLSCREEN;
        decorView.setSystemUiVisibility(uiOptions);
    } …
Run Code Online (Sandbox Code Playgroud)

android

6
推荐指数
2
解决办法
1万
查看次数

标签 统计

android ×2

touchscreen ×1