是否可能具有如下结构。 让LinearLayout在屏幕前显示:
<FrameLayout>
<LinearLayout>
.. Back Layout
</LinearLayout>
<LinearLayout>
.. Front layout
</LinearLayout>
</FrameLayout>
这是图片。 我尝试过的: 我已经尝试为LinearLayout A(前面)设置android:layout_marginLeft =“ - 300dp”,但是一旦我在手机上测试它,A布局就会回到可见区域内。 在动画结束后,我还尝试使用TranslateAnimation将A布局推离屏幕。布局回到可见区域内。
请帮我解决问题。谢谢。
答案 0 :(得分:3)
所以如果有人在这里需要这样的东西,我怎么解决它。 内容顶部的滑动菜单。 问题中描述的布局结构。这是xml中的一个简单动画: show_menu.xml
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:fromXDelta="-100%"
android:toXDelta="0%"
android:duration="400">
</translate>
</set>
hide_menu.xml:
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate
android:fromXDelta="0%"
android:toXDelta="-100%"
android:duration="400">
</translate>
</set>
在MyActivity中
//loading hide animation and setting listener.
anim = AnimationUtils.loadAnimation(this, R.anim.hide_menu);
anim.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationRepeat(Animation animation) {
// TODO Auto-generated method stub
}
//on animation end setting visibility to gone
@Override
public void onAnimationEnd(Animation animation) {
// TODO Auto-generated method stub
MenuList.setVisibility(View.GONE);
}
});
对于show_menu动画的动画也是如此,除了将onAnimationStart设置为visibilty为可见。 代码中的MenuList是问题中图中的A布局。
<强>更新强> * 今天做滑动菜单的最佳方法是使用DrawerLayout。 *