安卓给界面上的view添加动画
程序员文章站
2022-01-20 23:11:01
...
动画弹出动画隐藏。(可以分享整个项目)
1.在RelativeLayout布局中添加这样一个布局
<LinearLayout
android:id="@+id/tips_layout"
android:layout_width="170dp"
android:layout_height="100dp"
android:layout_marginLeft="-170dp"
android:orientation="vertical"
android:background="@drawable/tip_layout_drawable"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:gravity="center">
<TextView
android:id="@+id/tip_textview"
android:textSize="10dp"
android:gravity="center"
android:textColor="@color/colordarkGray"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/tips"/>
</LinearLayout>
<Button
android:id="@+id/tip_button"
android:layout_toRightOf="@id/tips_layout"
android:layout_centerVertical="true"
android:layout_width="8dp"
android:layout_height="40dp"
android:background="@color/colorMian”/>
则是在界面的左侧以左创建了一个LinearLayout而Button刚好紧贴界面左侧
2.获取该view和需要点击的按钮
private LinearLayout tip_layout;
private Button tip_button;
tip_layout = view.findViewById(R.id.tips_layout);
tip_button = view.findViewById(R.id.tip_button);
tip_button.setOnClickListener(this);
3.在按钮点击方法里面现实动画弹出和隐藏
//设置说明的layout的位置
private void setTipFrame() {
final RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams)tip_layout.getLayoutParams();
ValueAnimator valueAnimator;
if (layoutParams.leftMargin == -layoutParams.width){
valueAnimator = ValueAnimator.ofInt(-layoutParams.width,leftMargin);
}else {
leftMargin = layoutParams.leftMargin;
valueAnimator = ValueAnimator.ofInt(leftMargin,-layoutParams.width);
}
valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator valueAnimator) {
int width = (int)valueAnimator.getAnimatedValue();
layoutParams.leftMargin = width;
tip_layout.setLayoutParams(layoutParams);
}
});
valueAnimator.setDuration(200);
valueAnimator.start();
}
上一篇: java读取JAR包中的文件
下一篇: 异常处理那些事
推荐阅读
-
安卓自定义View之带动画的饼状图
-
安卓三种动画之一View Animation与 案例 为活动的载入与退出添加动画
-
安卓View的滑动(scrollTo/scrollBy,layout,动画)
-
给LinearLayout的子View添加动画
-
安卓给View添加动画效果
-
安卓 View设置VISIBLE、GONE时,添加执行动画
-
安卓自定义View之添加动画
-
安卓三种动画之一View Animation与 案例 为活动的载入与退出添加动画
-
[Android/安卓] ValueAnimator(值动画)设置View的Width(宽度)和Height(高度)
-
Android给TextView_Button的文字添加阴影效果_安卓TextView显示文字阴影效果