动画效果

本文介绍了一种实现注册界面中动态高亮效果的方法。通过调整View的宽度及使用TranslateAnimation来平滑地切换高亮位置,实现了交互式的视觉效果。
<RelativeLayout
	android:id="@+id/register_divider_layout"
	android:layout_width="fill_parent"
	android:layout_height="2dp" >

	<View
		android:id="@+id/register_divider"
		android:layout_width="fill_parent"
		android:layout_height="fill_parent"
		android:background="@drawable/tab_unpressed" />

	<View
		android:id="@+id/register_divider_highlight"
		android:layout_width="0dp"
		android:layout_height="fill_parent"
		android:background="@drawable/tab_pressed" />
</RelativeLayout>
private void initImageView() {
    mHighLightView = findViewById(R.id.register_divider_highlight);
    RelativeLayout.LayoutParams params = (LayoutParams) mHighLightView.getLayoutParams();
    DisplayMetrics dm = getResources().getDisplayMetrics();
    mScreenW = dm.widthPixels; // 获取分辨率宽度
    if (params == null) {
        int height = (int) (2 * dm.density);
        params = new RelativeLayout.LayoutParams(mScreenW / 2, height);
    }
    params.width = mScreenW / 2;
    mHighLightView.setLayoutParams(params);
}

{
	Animation animation = new TranslateAnimation(oneW * previousPage, oneW * currentPage, 0, 0);
	animation.setFillAfter(true); 	// True:图片停在动画结束位置
	animation.setDuration(300);	//设置动画持续时间 
	animation.setRepeatCount(0); 	// 设置重复次数,这里不重复
	// animation.setRepeatMode(Animation.REVERSE); // 设置反方向执行
	mHighLightView.startAnimation(animation);		 
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值