
#深入浅出学习eTs#(十四)我的专属广告 原创
本项目Gitee仓地址:深入浅出eTs学习: 带大家深入浅出学习eTs (gitee.com)
一、需求分析
大家使用手机的时候一定显示过广告,一般是中间是主图,右上角显示跳过,我们需要点击跳过才能跳过广告,本次我们就来制作一个这样的自己专属广告
- 进入APP弹出
- 显示广告内容
- 右上角点击跳过
- 倒计时到达自动跳转
二、控件介绍
页面跳转(Router、Ability)
页面跳转可以分为页面内跳转和页面间跳转,页面内跳转是指所跳转的页面在同一个 Ability
内部,它们之间的跳转可以使用 Router
或者 Navigator
的方式;页面间跳转是指所跳转的页面属与不同的 Ability
,这种跳转需要借助 featureAbility
实现。
本内容主要涉及页面内跳转,实现内部的显示,主要使用到的是Router:
-
push:打开新的页面,新页面在栈顶位置, RouterOptions 定义了以下参数:
-
url:目标页面的路径,该路径必须在 config.json 的 pages 下配置,否则不起作用。
-
params:可选参数,向目标页面传递参数。
-
replace:新页面替换当前页面并把当前页面销毁。
-
back:返回上一页。
-
clear:清空路由栈里的其它页面。
-
getLength:获取当前路由栈里的页面数量。
-
getState:获取当前页面的状态.
-
enableAlertBeforeBackPage:
-
disableAlertBeforeBackPage:
-
getParams:获取通过路由传递过来的参数。
Stack
堆叠容器,子组件按照顺序依次入栈,后一个子组件覆盖前一个子组件。
说明:
该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
接口
Stack(value?: { alignContent?: Alignment })
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
alignContent | Alignment | 否 | 设置子组件在容器内的对齐方式。 默认值:Alignment.Center |
三、UI设计
(1)两个页面跳转
此处一定要新建page文件,否则无法跳转
(2)广告导入
首先需要一张底图,放在第一个页面
此时需要在右上角加入一个标签
(3)定时器实现
首先需要将标签内容和变量进行绑定,创建变量
之后创建定时器,实现秒减
在开机时候进行使用
(4)点击跳转
跳转一共有两种形式:时间到了跳转和点击跳转,这里介绍点击跳转
四、功能演示
自动跳转实现
点击跳转实现
