我有一个垂直居中的视图。我想删除layout_centerHorizontal
属性,以便它会出现在视图的顶部,但我想为该过渡设置动画。
的xml:
<RelativeLayout
android:id="@+id/center_box"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="65sp"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:animateLayoutChanges="true"
>
...
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginRight="20dp"
android:text="HELLO WORLD"
android:textColor="#fff"
android:maxLines="1"
android:gravity="center"
android:layout_centerVertical="true"
android:textSize="35sp" />
...
</RelativeLayout>
的java
private void showSplits(){
RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams) centerBox.getLayoutParams();
lp.removeRule(RelativeLayout.CENTER_VERTICAL);
centerBox.setLayoutParams(lp);
//but I want to animate this instead...
}
答案 0 :(得分:0)
动画代码:
Battlefield
在java函数代码中:
public class Battlefield : Environment {
public List<ENTITY> Population
{
get
{
var epop = base.Population;
return epop.Union(Casualties);
}
}
public List<ENTITY> Casualties
{
get { return this.casualties; }
}
}
在创建视图代码中:
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator"
android:fillAfter="true">
<translate
android:fromYDelta="0%p"
android:toYDelta="100%p"
android:duration="800" />
</set>
你应该实现AnimationListener。