
发表日期: 2021-04-02 14:07:22 浏览次数:97
双峰400电话办理【双峰网站公司】双峰百度优化、双峰域名注册、双峰网店美工、双峰微信公众号托管
双峰县,隶属湖南省娄底市,地处湘中腹地,东邻湘潭县、衡山县,南接衡阳县,西毗邵东市、涟源市,北界娄底市、湘乡市,东西长61千米,南北宽59.2千米,总面积1596平方千米。 [1] 截至2018年末,双峰县常住人口为82.74万。 [2] 截止2019年7月,双峰县下辖11个镇、3个乡、2个街道。 [2-3]
中华民国时期,双峰隶属湘乡县。1951年8月,划出湘乡县的三、六、七区建立双峰县,属益阳专区,县城设永丰镇。1999年7月,娄底地区撒地设市,双峰隶属娄底市。 [2]
2018年,双峰县实现地区生产总值233.57亿元。 [4] 2019年4月16日,湖南省人民政府经过实地检查和第三方实地评估,双峰县符合贫困县退出条件,同意脱贫摘帽。 [5] 2021年1月29日,入选湖南省人民政府公布的2020年度真抓实干成效明显的地区名单。
将定制回复信息保存在数据库中,以便用户再次启动应用时,保存的数据可以被重新读取出来。App Inventor提供了一个特殊的事件块:Screen1.Initialize,当应用启动时,将触发该事件(我们在第3章MoleMash中使用过)。将Screen.Initialize块拖出来,并将某些程序块放在其中,那么这些程序块会在应用启动时逐一执行。
在本应用中,Screen1.Initialize事件的处理程序会检查数据库中是否存放了自定义回复内容。如果是,则使用TinyDB.GetValue函数加载存储的内容。实现这一功能所需的块见表4-5。
表4-5 应用启动时用于加载数据的块
组件类型 | 所在抽屉 | 作用 | |
|---|---|---|---|
Initialize global response to | Variables | 用于存放数据库中读出的定制回复信息 | |
“” | Text | 变量的初始值可以是任意值 | |
Screen1.Initialize | Screen1 | 应用启动时会触发该事件 | |
set global response to | Variables | 用从数据库中读出的值为该变量赋值 | |
TinyDB1.GetValue | TinyDB1 | 从数据库中读取已存储的定制回复信息 | |
"responseMessage" | Text | 插入TinyDB.GetValue的tag插槽,与之前TinyDB.StoreValue使用相同文本 | |
If | Control | 判断读出的数据中是否包含文字 | |
> | Math | 检查读出的数据长度是否大于0 | |
Length(text) | Text | 检查文本类型数据的长度 | |
get global response | Variables | 从变量中读出的数据(定制回复信息) | |
数字0 | Math | 用于比较长度 | |
set ResponseLabel.Text to | ResponseLabel | 如果读出的数据有内容,放在label中 | |
get global response | Variables | 从变量中读出的数据(定制回复信息) |
如图4-6所示,要想理解这些块的功能,必须设想用户的使用过程:首次打开应用,输入自定义回复,随时退出并再次打开应用。用户首次启动应用时,数据库中没有定制回复可供加载,因此ResponseLabel中显示的是默认回复。再次启动时,才有可能从数据库中加载定制回复,并将其显示在ResponseLabel中。

图 4-6 应用启动时从数据库中加载定制回复
应用启动时触发Screen1.Initialize事件,并用tag “responseMessage”来调用TinyDB1.GetValue,该tag与之前用户存储定制回复时采用的tag相同。读出的值放在变量response中,并对其进行检验,然后才能在ResponseLabel中显示。想想看,为什么从数据库中读出的数据,在向用户显示之前,要经过检验呢?如果数据库中不存在与指定tag相对应的数据,TinyDB将返回空文本;而第一次启动应用时,数据是不存在的,直到用户输入了自定义回复,数据才会有。由于变量response中保存了数据库返回值,因此可以用if块来检查其长度是否大于0。如果大于0 ,说明的确从TinyDB读出了定制回复信息,就会将信息显示在ResponseLabel中;如果长度不大于0,说明之前没有保存过定制回复信息,因此将不修改ResponseLabel的显示内容(保留默认自动回复内容)。
测试:上述功能无法进行实时测试,因为每次连接“AI伴侣”启动应用时,数据库都会被清空。因此需要选择“build->App(provide QR code)”,然后扫描条码,将应用下载安装到手机上。安装之后,在NewResponseTextbox中输入新的回复信息并单击SubmitResponseButton按钮;关闭应用并重新启动它,这次定制回复信息出现了吗?
本节将修改应用:收到短信后,手机将大声朗读发送者的电话号码以及短信内容。开车收到短信,虽然有自动回复功能,但你还是禁不住想知道短信的内容。使用text-to-speech功能,就可以手不离方向盘而收听到短信的内容。
Android设备提供了text-to-speech功能,而App Inventor提供了一个TextToSpeech组件,它可以读出任何text(文本信息 )(注意,此处“text”指的是一般意义上的字/word:一串字母、数字以及标点符号组成的文本,而不是短信文本 。)
在本章的“准备开始”部分,我们要求你从Android Market下载一个text-to-speech的模块。如果你还没做,现在该去做了。根据需要安装并配置完模块之后,就可以在App Inventor中使用TextToSpeech组件了。
TextToSpeech组件的使用非常简单,只需调用它的Speak函数并插入要朗读的文字即可。例如,图4-7中的函数会说“Hello World”。

图 4-7 会说“HelloWorld”的块
服务热线
顶部
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: http://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878