0

Galaxy S8Note 8设备具有新的软键栏,可以由用户选择隐藏和可见状态。问题是我需要根据 Key Bar 的大小来修改 Ui。我能够根据此处建议的解决方案计算条形的大小。它完美地计算了大小,但是当键盘隐藏时它也计算出相同的大小,这意味着键盘的状态与此信息无关。是否有可以识别这种可见性的标志?

4

1 回答 1

0

您可以通过在内容视图上设置 setOnSystemUiVisibilityChangeListener 轻松检查它:

View contentView = findViewById(android.R.id.content);
contentView.setOnSystemUiVisibilityChangeListener
            (visibility -> updateHeight(contentView.getHeight()));

所以 contentView.getHeight() 将返回你的真实高度有/没有软键栏

如果您想检查您的活动何时创建 - 只需致电

contentView.post(() -> updateHeight(mContentView.getHeight()));
于 2018-04-18T11:57:07.680 回答