Andorid Studio 制作欢乐写数字(Timer启动+帧动画)(1)

这篇博客介绍了如何使用Android Studio制作一个帧动画,实现数字书写的动画效果。通过获取图片资源,设置帧持续时间,以及监听手势滑动来切换不同帧,最后展示书写完成的对话框。博客提供了详细的代码实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//获取图片缩放后宽度

layoutParams.width = (int)(arrdown.getWidth() * scaleWidth);

//获取图片缩放后高度

layoutParams.height = (int)(arrdown.getHeight() * scaleHeight);

iv_frame.setLayoutParams(layoutParams);

lodimagep(1);

}

private synchronized void lodimagep(int j) {

i = j;

if(i < 25){ //当前图片小于25

String name = “on1_” + i;

//获取图片资源id

int imgid = getResources().getIdentifier(name,“drawable”,“com.example.msi.writenumber”);

iv_frame.setBackgroundResource(imgid);

i++;

}

if(j == 24){ //如果当前图片的位置为24

if(typedialog){ //没有对话框的情况下

dialog(); //调用书写完成对话框方法

}

}

}

这里写图片描述

实现代码如下:

其中R.drawable.frame1为放置所有帧的anmianimation-list

duration为帧持续的时间为0.15s即150ms

public void OnYS(View v){

if(mdiaolg == null){

mdiaolg = new mCustomProgressDialog(this,“演示中单击边缘取消”,R.drawable.frame1);

}

mdiaolg.show();

}

//继承dialog代码如下:

public class mCustomProgressDialog extends ProgressDialog{

private AnimationDrawable mAnimation; //设置对话框的动画资源

private Context mContext;

private ImageView mImageView;

private String mLoadingTip; //设置对话框文字

private TextView mLoadingTv; //显示对话框文字

private int mResid; //资源id

public mCustomProgressDialog(Context context,String content,int id) {

super(context);

this.mContext = context;

this.mLoadingTip = content;

this.mResid = id;

//设置单击对话框周边是否让dialog消失,设置为True

setCanceledOnTouchOutside(true);

}

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.progress_dialog);

//获取布局文件中的TextView

mLoadingTv = findViewById(R.id.loadingTv);

mImageView = findViewById(R.id.load

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值