如何监听键盘是否隐藏 android
1个回答
2015-12-04 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
// 在Manifest的配置Activity设置android:windowSoftInputMode="stateVisible|adjustResize"
// 目前的View为整个窗口大小, 如果不是可能要调整
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int measuredWidth = MeasureSpec.getSize(widthMeasureSpec);
int measuredHeight = MeasureSpec.getSize(heightMeasureSpec);
if(measuredHeight < getHeight() && input != null) { // 软键盘显示
// @input 自定义组件, input.mRightBY 为该组件的下边界
int distance = mInput.mRightBY - measuredHeight; // 计算滚动距离
if(distance > 0) {//软键盘显示
}
} else if(measuredHeight > getHeight()) { // 软键盘隐藏
}
setMeasuredDimension(measuredWidth, measuredHeight);
}
// 目前的View为整个窗口大小, 如果不是可能要调整
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int measuredWidth = MeasureSpec.getSize(widthMeasureSpec);
int measuredHeight = MeasureSpec.getSize(heightMeasureSpec);
if(measuredHeight < getHeight() && input != null) { // 软键盘显示
// @input 自定义组件, input.mRightBY 为该组件的下边界
int distance = mInput.mRightBY - measuredHeight; // 计算滚动距离
if(distance > 0) {//软键盘显示
}
} else if(measuredHeight > getHeight()) { // 软键盘隐藏
}
setMeasuredDimension(measuredWidth, measuredHeight);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询