1

我必须在软键盘上方设置下拉列表。滚动时它出现在键盘上方。除了软键盘高度,我如何获取窗口或设备大小?有没有办法做到这一点?感谢先进!

4

2 回答 2

2

当键盘启动时,视图层次结构无效并重新绘制。所以你可以使用这个回调:

final View activityRootView = findViewById(R.id.mainLayout);
activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
    @Override
    public void onGlobalLayout() {
      //
     }
});

可以通过以下方式检索包括键盘在内的高度:

activityRootView.getRootView().getHeight()

通过软键盘调整视图的高度:

activityRootView.getHeight()
于 2013-05-23T14:12:48.620 回答
1

您可以使用根视图组的getWindowVisibleDisplayFrame方法来获取可见框架的大小

于 2013-05-23T13:55:38.673 回答