[英]animation pushed up when keyboard is visible
我有一个动画,其中我的图像在1分钟内从屏幕底部移到屏幕顶部,并在活动开始时开始,如下所示
@Override
public void onWindowFocusChanged(boolean hasFocus){
image.getLocationOnScreen(diverSrcLoc); //bottom
View destLine = (View) findViewById(R.id.diverDest); //top
destLine.getLocationOnScreen(diverDestLoc);
destLoc[0] = srcLoc[0];
TranslateAnimation translate = new TranslateAnimation(0, destLoc[0]-srcLoc[0], 0, destLoc[1]-srcLoc[1]);
translate.setFillAfter(true);
translate.setDuration(Constants.MAX_TIME);
image.startAnimation(translate);
}
和清单:
<activity
android:name="com.xxx.MainActivity"
android:label="@string/app_name"
android:windowSoftInputMode="adjustResize|stateVisible" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
问题在于,当活动开始并且弹出键盘时,动画会不断超出屏幕(键盘将动画向上推)。 我以为adjustReize可以做到,但运气不好。 当您关闭键盘时,动画将返回其正常路径。 再次弹出键盘,然后再次向上推动画图像。
有没有解决的方法?目的地不应该用键盘改变吗?
您需要添加标志“ adjustPan”,而不是AdjustResize
AdjustResize调整布局的大小,而AdjustPan仅允许键盘显示在其上方
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.