And*_*ist 9 android android-animation android-listview android-view
我需要我的listview隐藏和显示使用替代触摸.因此,使用动画隐藏列表视图在屏幕的左侧
Animation animation = new TranslateAnimation(-100, 0,0, 0);
animation.setDuration(100);
animation.setFillAfter(true);
lv.startAnimation(animation);
lv.setVisibility(0);
Run Code Online (Sandbox Code Playgroud)
并用于显示使用
lv.setVisibility(View.VISIBLE);
Run Code Online (Sandbox Code Playgroud)
我的问题是列表视图没有得到隐藏.它会向左侧移动并再次返回.我不知道如何在触摸时完全隐藏列表视图到左边缘.请帮助实现这一目标
dip*_*ali 21
// To animate view slide out from left to right
public void slideToRight(View view){
TranslateAnimation animate = new TranslateAnimation(0,view.getWidth(),0,0);
animate.setDuration(500);
animate.setFillAfter(true);
view.startAnimation(animate);
view.setVisibility(View.GONE);
}
// To animate view slide out from right to left
public void slideToLeft(View view){
TranslateAnimation animate = new TranslateAnimation(0,-view.getWidth(),0,0);
animate.setDuration(500);
animate.setFillAfter(true);
view.startAnimation(animate);
view.setVisibility(View.GONE);
}
// To animate view slide out from top to bottom
public void slideToBottom(View view){
TranslateAnimation animate = new TranslateAnimation(0,0,0,view.getHeight());
animate.setDuration(500);
animate.setFillAfter(true);
view.startAnimation(animate);
view.setVisibility(View.GONE);
}
// To animate view slide out from bottom to top
public void slideToTop(View view){
TranslateAnimation animate = new TranslateAnimation(0,0,0,-view.getHeight());
animate.setDuration(500);
animate.setFillAfter(true);
view.startAnimation(animate);
view.setVisibility(View.GONE);
}
Run Code Online (Sandbox Code Playgroud)
最后我找到了答案,这是对坐标值的非常简单的修改。代码是
Animation animation = new TranslateAnimation(0,-200,0, 0);
animation.setDuration(2000);
animation.setFillAfter(true);
listView1.startAnimation(animation);
listView1.setVisibility(0);
Run Code Online (Sandbox Code Playgroud)
这里在第二个坐标处设置负值,因为它从 o 向负侧移动,这意味着视图向左侧内侧移动。
| 归档时间: |
|
| 查看次数: |
18436 次 |
| 最近记录: |