微信小程序动画和Canvas笔记

微信小程序动画和Canvas

动画

使用wx.createAnimation创建动画对象

javascript 复制代码
// 创建动画对象
const animation = wx.createAnimation({
  duration: 1000, // 动画持续时间
  timingFunction: 'ease', // 动画速度曲线
  delay: 0, // 动画延迟时间
  transformOrigin: '50% 50% 0', // 动画的中心点
});

动画方法
animation.opacity(value).step(): 设置透明度
animation.scale(valueX, valueY).step(): 设置缩放
animation.rotate(deg).step(): 设置旋转角度
animation.translate(x, y).step(): 设置平移距离
animation.skew(ax, ay).step(): 设置倾斜角度

应用动画

javascript 复制代码
// 应用动画到指定组件上
this.setData({
  animationData: animation.export(),
});

示例

javascript 复制代码
// 创建动画对象
const animation = wx.createAnimation({
  duration: 1000,
  timingFunction: 'ease',
});
// 设置动画
animation.translateX(100).rotate(45).step();

// 应用动画
this.setData({
  animationData: animation.export(),
});

Canvas

使用Canvas绘制图形

javascript 复制代码
// 获取Canvas上下文对象
const context = wx.createCanvasContext('myCanvas');

// 绘制矩形
context.setFillStyle('#FF0000');
context.fillRect(0, 0, 100, 100);

// 绘制圆形
context.beginPath();
context.arc(100, 100, 50, 0, 2 * Math.PI);
context.setFillStyle('#00FF00');
context.fill();
context.closePath();

// 绘制文本
context.setFillStyle('#0000FF');
context.setFontSize(20);
context.fillText('Hello Canvas', 50, 150);

// 绘制图片
context.drawImage('imagePath', 0, 0, 100, 100);
// 绘制到Canvas
context.draw();

Canvas事件

canvasId.tap: 点击事件
canvasId.touchstart: 触摸开始事件
canvasId.touchmove: 触摸移动事件
canvasId.touchend: 触摸结束事件
canvasId.longtap: 长按事件

2.3. 示例

html 复制代码
<canvas canvas-id="myCanvas" bindtap="canvasTap" style="width: 300px; height: 200px;"></canvas>
javascript 复制代码
Page({
  canvasTap: function (e) {
    console.log('Canvas tapped!');
  },
});

以上就是我整理的一些微信小程序动画和Canvas的笔记!!!

相关推荐
微订校园外卖平台5 小时前
新手做校园外卖平台:小程序启动顺序与订单链路验收
小程序·外卖系统·本地生活·微订
计算机毕设定制辅导-无忧学长6 小时前
《基于物品协同过滤的闲置书换购微信小程序设计开发》
java·vue.js·spring boot·微信小程序·uniapp·闲置书换购微信小程序·物品协同过滤算法
ngaiwe16 小时前
AA我来算小程序实践:把付款人、承担人和结算状态分开建模
微信小程序
FX1317887KP_1 天前
KET口语Part 2看图对话怎么练?“观察—提问—回应”;三步法讲透
小程序·ket口语·pet口语·fce备考·剑桥英语
上线再说1 天前
小程序图片处理从 2.9 秒到 420 毫秒:云函数冷启动的 5 个坑
微信小程序
沃达德软件1 天前
智慧教育教学资源管理系统(PC端+微信小程序)
微信小程序·小程序
阿俊-全栈开发1 天前
LikeShop 小程序商城首页可配置弹窗的设计与实现(Java + uni-app)
小程序·状态模式·likeshop·likeshop开源商城
考拉讲支付2 天前
延迟分账 / 核销分账的技术实现方案:服务完成后再分钱,到底怎么设计?
大数据·运维·人工智能·微信小程序·小程序·系统架构
Newway3212 天前
便利店小程序商城如何打通总部、门店与会员
小程序·小程序商城·会员运营·连锁便利店·门店订货·o2o系统
Strawberry962 天前
小程序视频播放官方方案
小程序