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