当前课程知识点:移动快速应用开发 >  第五章 我的绘图板 >  绘图的保存 >  绘图的保存

返回《移动快速应用开发》慕课在线视频课程列表

绘图的保存在线视频

绘图的保存

下一节:社交应用界面设计

返回《移动快速应用开发》慕课在线视频列表

绘图的保存课程教案、知识点、字幕

大家好

在前一讲里

我们完成了手指作画和画圆功能的开发

在这一讲中我们将进行线宽设置并跳屏传值

和保存图像两种功能的开发

在Settings屏幕中实现线宽选择功能

需要用到滑动条组件

滑动条组件通过移动滑块位置来设置数值

有最大值和最小值2个属性要根据需求来进行设置

由于APP Inventor里面一个屏幕是

不能访问另外一个屏幕的组件或变量的

在Settings屏幕中设置好的线宽值传递给Screen1屏幕

需要通过“打开屏幕并传值”方法返回线宽值

保存功能会将画布中的图案

保存为图像文件

存放到手机SD卡中

画布组件提供了两种保存方式

保存 过程和“另存”过程

这两种过程虽然都能进行保存操作

但都有缺陷

不能由使用者自由设定保存的文件名

我们需要结合APP Inventor中提供的

对话框组件来实现获取用户输入的文件名功能

下面我们就来进行功能的具体实现

下面我们来实现清除屏幕功能

清除屏幕功能

需要点击我们的按钮3

调用按钮3的被点击事件

屏幕清除

我们可以使用画布给出的清除画布过程

同时设置球形精灵的可见性

为假

这样我们就清楚了画布的内容

同时设置球形精灵

为不可见

下面我们再来实现保存功能

保存功能会将画布中的图案保存为图像

文件存放到SD卡中

画布组件提供了两种保存方式

分别为保存和另存为

其中保存是一种不指定文件名的方式

系统会自动进行命名

而另存为可以有开发者指定名称

这两种过程虽然都能进行保存

但都有缺陷

如果调用保存方法

那么保存生成的图像名是由前缀APP Inventor

加上当前时间组成的

如果调用另存为保存的文件名在开发阶段

就会被固定

如果需要多次保存的话

那么保存图像会被后者覆盖掉

所以实际使用时我们希望自由设定保存的

文件名

APP Inventor提供了对话框

组件来获取用户输入的文件名功能

我们可以通过显示文本对话框方法来获取

用户输入的文件名

显示文本对话框

有三个输入框

分别是消息、标题

以及允许撤销

下面我们就来使用对话框中的显示文本

对话框来进行设置保存

我们的保存图像为按钮4

调用

按钮4

被点击时 事件使用文本对话框

消息

我们设置为请输入文件名

标题

我们设置为保存提示

那么在调用当对话框输入完成的事件

我们需要设置求值

但忽略结果

在求值和忽略结果后

我们调用画布的另存为文件名

我们需要使用合并字符串

第一个我们设置为取响应

第二个我们设置为图片默认后缀名

.jpg

再调用对话框中的显示警告信息

通知用户保存成功

这样我们的保存功能就实现了

下面我们来实现屏幕的跳转

和传值工能

在这个例子中的屏幕跳转和传值功能

主要是用来实现画笔的宽度设置

在我们的Screen1屏幕中

点击画布设置

就会跳转到Settings屏幕

那么我们需要设置按钮2的被点击事件

点击控制

选择打开另一屏幕

屏幕名称为Settings

这样我们就实现了屏幕的跳转功能

下面我们再来实现线宽选择功能

进入Settings屏幕中

线宽选择是由滑动条来决定的

我们可以调用滑动条的位置被改变事件

世界在调用画布中的线宽设置

设置画布线宽为滑动条的滑块位置

这样就可以设置线宽

那么设置完线宽之后

我们需要在画布中进行查看

所以我们还接着需要设置画布中的被拖动事件

首先设置画布的线宽为刚刚确定的线宽

接着调用画布的画线

设置x1为前点x坐标

y1为前点y坐标

x2为当前x坐标

y2为当前y坐标

这样我们就可以在Settings中的画布

查看我们的线宽

在Settings中设置好线宽之后

我们还需要通过屏幕传值来为我们的

Screen1画布设置线宽

那么我们需要在Settings屏幕中设置按钮的

被点击事件

选择关闭屏幕

并返回值

这个值我们需要设置为画布的线宽

同样在Screen1中为了获取返回值

需要调用关闭屏幕的方法

我们返回Screen1

我们点击Screen1

调用关闭屏幕事件

接着设置我们的全局变量

global线宽

为取返回结果

这样在Settings设置的线宽就可以

传递到我们的Screen1中去

为了排列美观

我们可以纵向排列

所有块

这样我们设置的界面就排列整齐

同学们绘图板的所有功能已经完全实现

欢迎大家的收看

谢谢

移动快速应用开发课程列表:

第一章 App Inventor介绍

-App Inventor简介

-- App Inventor简介

-第一个应用-喵喵叫的小猫

--喵喵叫的小猫

-App Inventor的调试方法

--App Inventor的调试方法

-作业--作业

-拓展练习

第二章石头剪刀布

-石头剪刀布界面设计

--石头剪刀布界面设计

-选择结构

--选择结构

-组件介绍

--组件介绍

-石头剪刀布逻辑设计

--石头剪刀布逻辑设计

-作业--作业

第三章 我的计算器

-计算器的界面设计

--计算器的界面设计

-过程的定义

--过程的定义

-实现整数运算的计算器

--实现整数运算的计算器

-带小数点的计算器

--带小数点的计算器

-代码测试

--代码测试

-作业--作业

第四章 我的词典

-我的词典界面设计

--我的词典界面设计

-语言翻译

--语言翻译

-文字朗读

--文字朗读

-语音识别

--语音识别

-作业--作业

第五章 我的绘图板

-绘图板界面设计

--绘图板界面设计

-手指作画

--手指作画

-精灵画圆

--精灵画圆

-绘图的保存

--绘图的保存

-作业--作业

第六章 社交应用

-社交应用界面设计

--社交应用界面设计

-拨号并收发短信

--拨号并收发短信

-短信的分类保存

--短信的分类保存

-短信的选择与删除

--短信的选择与删除

-作业--作业

第七章 扫码识物

-条码扫描器

--条码扫描器

-申请Web-API的步骤和调试方法

--申请Web-API的步骤和调试方法

-Web客户端

--Web客户端

-JSON格式数据的解析方法

--JSON格式数据的解析方法

-扫码识物

--扫码识物1

--扫码识物2

-作业--作业

第八章 我的扫描仪

-人工智能技术介绍

--人工智能技术介绍

-扫描仪界面设计

--扫描仪界面设计

-百度AI 函数介绍

--百度AI 函数介绍

-扫描仪的代码实现

--扫描仪的代码实现

-作业--作业

-拓展练习

绘图的保存笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。