编辑: 总结如果我在视图转换上有动画问题出现了,但是一旦从视图中移除动画,视图翻转器中未显示的子视图就会显示出来。
我创建了一个视图鳍状肢它运行得很好我也设置了一些动画,但是例如出现了一个错误。 。就像在下面的屏幕上可以看到我有一个列表视图,如果我点击随机行视图被翻译。代码:((ViewFlipper)findViewById(R.id.in_app_vf)).setDisplayedChild(1);
之后我单击后退按钮,第一个视图显示代码:((ViewFlipper)findViewById(R.id.in_app_vf)).setDisplayedChild(0);
但问题是,当我点击editText所在的同一空间时,它会调用键盘。因此,列表视图在editText字段所在的位置不可单击。我找不到问题所在。
我使用的动画:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator"
android:fillAfter="true">
<translate
android:fromXDelta="0"
android:toXDelta="-100%p"
android:duration="700"/>
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:duration="900" />
</set>
我尝试删除未使用的视图的代码,但它无效:
private void setAllTheOtherViewGone(){
for(int i = 0; i <= ((ViewFlipper)findViewById(R.id.in_app_vf)).getChildCount()-1;i++)
if(i != ((ViewFlipper)findViewById(R.id.in_app_vf)).getDisplayedChild()){
((ViewFlipper)findViewById(R.id.in_app_vf)).getChildAt(i).setVisibility(View.GONE);
((ViewFlipper)findViewById(R.id.in_app_vf)).getChildAt(i).setVisibility(View.INVISIBLE);
}
}
答案 0 :(得分:0)
设置edittext的属性setFocusable(false)和setFocusableInTouchmode(false)可能有效。