当前位置: 首页 > news >正文

下拉框代码自做生成网站百度seo排名培训优化

下拉框代码自做生成网站,百度seo排名培训优化,怎么搭建Wordpress博客,智慧团建 网上共青团官网介绍 本篇Codelab将介绍如何使用基础组件Slider,通过拖动滑块调节应用内字体大小。要求完成以下功能: 实现两个页面的UX:主页面和字体大小调节页面。拖动滑块改变字体大小系数,列表页和调节页面字体大小同步变化。往右拖动滑块字…

介绍

本篇Codelab将介绍如何使用基础组件Slider,通过拖动滑块调节应用内字体大小。要求完成以下功能:

  1. 实现两个页面的UX:主页面和字体大小调节页面。
  2. 拖动滑块改变字体大小系数,列表页和调节页面字体大小同步变化。往右拖动滑块字体变大,反之变小。
  3. 字体大小支持持久化存储,再次启动时,应用内字体仍是调节后的字体大小。效果图如下所示:

相关概念

  • 字体大小调节原理:通过组件Slider滑动,获取滑动数值,将这个值通过首选项进行持久化,页面的字体通过这个值去改变大小。
  • 首选项:首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。

环境搭建

软件要求

  • DevEco Studio版本:DevEco Studio 3.1 Release。
  • OpenHarmony SDK版本:API version 9。

硬件要求

  • 开发板类型:润和RK3568开发板。
  • OpenHarmony系统:3.2 Release。

环境搭建

完成本篇Codelab我们首先要完成开发环境的搭建,本示例以RK3568开发板为例,参照以下步骤进行:

  1. 获取OpenHarmony系统版本:标准系统解决方案(二进制)。以3.2 Release版本为例:

2.搭建烧录环境。

  • 完成DevEco Device Tool的安装
  • 完成RK3568开发板的烧录

3.搭建开发环境。

  • 开始前请参考工具准备,完成DevEco Studio的安装和开发环境配置。
  • 开发环境配置完成后,请参考使用工程向导创建工程(模板选择“Empty Ability”)。
  • 工程创建完成后,选择使用真机进行调测。

代码结构解读

本篇Codelab只对核心代码进行讲解。

├──entry/src/main/ets                // ArkTS代码区
│  ├──common
│  │  ├──constants
│  │  │  ├──CommonConstants.ets      // 公共常量类
│  │  │  └──StyleConstants.ets       // 属性常量类
│  │  ├──database
│  │  │  └──PreferencesUtil.ets      // 首选项数据操作工具类
│  │  └──utils
│  │     ├──GlobalContext.ets        // 全局上下文工具类
│  │     └──Logger.ets               // 日志工具类
│  ├──entryability
│  │  └──EntryAbility.ets            // 程序入口类
│  ├──pages
│  │  ├──HomePage.ets                // 主页面
│  │  └──SetFontSizePage.ets         // 字体大小调节页面
│  ├──view
│  │  ├──ChatItemComponent.ets       // 字体大小调节页面聊天Item组件
│  │  ├──SettingItemComponent.ets    // 主页面列表Item组件
│  │  └──TitleBarComponent.ets       // 页面标题栏组件
│  └──viewmodel
│     ├──ChatData.ets                // 聊天列表数据类
│     ├──HomeViewModel.ets           // 主页面数据模型
│     ├──ItemDirection.ets           // 聊天数据位置
│     └──SettingData.ets             // 设置列表数据类
│     └──SetViewModel.ets            // 字体大小调节页面数据模型
└──entry/src/main/resources	         // 资源文件目录

保存默认大小

应用初始化时,为了保证页面中文本的正常显示。在entryAbility生命周期onCreate方法处,添加一个命名为“myPreferences”的首选项表。在表中添加一个名为“appFontSize”的字段,保存默认字体大小。代码如下所示:

// PreferencesUtil.ets
// 导入首选项数据库
import dataPreferences from '@ohos.data.preferences';export class PreferencesUtil {// 先将Promise<Preferences>保存到全局createFontPreferences(context: Context) {let fontPreferences: Function = (() => {let preferences: Promise<dataPreferences.Preferences> = dataPreferences.getPreferences(context,PREFERENCES_NAME);return preferences;});GlobalContext.getContext().setObject('getFontPreferences', fontPreferences);}// 保存默认字体大小saveDefaultFontSize(fontSize: number) {let getFontPreferences: Function =  GlobalContext.getContext().getObject('getFontPreferences') as Function;getFontPreferences().then((preferences: dataPreferences.Preferences) => {preferences.has(KEY_APP_FONT_SIZE).then(async (isExist: boolean) => {Logger.info(TAG, 'preferences has changeFontSize is ' + isExist);if (!isExist) {await preferences.put(KEY_APP_FONT_SIZE, fontSize);preferences.flush();}}).catch((err: Error) => {Logger.error(TAG, 'Has the value failed with err: ' + err);});}).catch((err: Error) => {Logger.error(TAG, 'Get the preferences failed, err: ' + err);});}
}

获取字体大小

在HomePage页面加载显示的时候,即生命周期onPageShow方法处,通过PreferencesUtil工具类中的getChangeFontSize方法读取首选项中的数据。

将读取到的数据保存到页面带有@State的变量中,通过这个变量对文本字体大小进行设置。代码如下所示:

// HomePage.ets
onPageShow() {PreferencesUtil.getChangeFontSize().then((value) => {this.changeFontSize = value;Logger.info(TAG, 'Get the value of changeFontSize: ' + this.changeFontSize);})
}
...
// PreferencesUtil.ets工具类
async getChangeFontSize() {let fontSize: number = 0;let getFontPreferences: Function = GlobalContext.getContext().getObject('getFontPreferences') as Function;fontSize = await (await getFontPreferences()).get(KEY_APP_FONT_SIZE, fontSize);return fontSize;
}

修改字体大小

在应用主页面,点击设置字体大小,可以跳转到字体大小调节页面。拖动滑块修改数据后,SetFontSizePage页面的Slider组件监听到onChange事件,改变字体大小后,调用PreferencesUtil工具类中saveChangeFontSize方法写入本条数据即可。代码如下所示:

// SetFontSizePage.ets
Slider({value: this.changeFontSize === CommonConstants.SET_SIZE_HUGE ? CommonConstants.SET_SLIDER_MAX : this.changeFontSize,min: CommonConstants.SET_SLIDER_MIN,max: CommonConstants.SET_SLIDER_MAX,step: CommonConstants.SET_SLIDER_STEP,style: SliderStyle.InSet
})....onChange(async (value: number) => {if (this.changeFontSize === 0) {this.changeFontSize = await PreferencesUtil.getChangeFontSize();this.fontSizeText = SetViewModel.getTextByFontSize(value);return;}// 获取改变后的字体大小this.changeFontSize = (value === CommonConstants.SET_SLIDER_MAX ?CommonConstants.SET_SIZE_HUGE : value);// 获取字体大小的文本this.fontSizeText = SetViewModel.getTextByFontSize(this.changeFontSize);// 保存数据PreferencesUtil.saveChangeFontSize(this.changeFontSize);})
// PreferencesUtil.ets工具类
saveChangeFontSize(fontSize: number) {let getFontPreferences: Function =  GlobalContext.getContext().getObject('getFontPreferences') as Function;getFontPreferences().then(async (preferences: dataPreferences.Preferences) => {await preferences.put(KEY_APP_FONT_SIZE, fontSize);preferences.flush();}).catch((err: Error) => {Logger.error(TAG, 'put the preferences failed, err: ' + err);});
}

总结

您已经完成了本次Codelab的学习,并了解到以下知识点:

  1. 使用Slider实现滑动条。
  2. 使用首选项实现持久化应用轻量级数据。

为了帮助大家更深入有效的学习到鸿蒙开发知识点,小编特意给大家准备了一份全套最新版的HarmonyOS NEXT学习资源,获取完整版方式请点击→HarmonyOS教学视频

HarmonyOS教学视频

鸿蒙语法ArkTS、TypeScript、ArkUI等…视频教程

鸿蒙生态应用开发白皮书V2.0PDF:

获取完整版白皮书方式请点击→《鸿蒙生态应用开发白皮书V2.0PDF

在这里插入图片描述

鸿蒙 (Harmony OS)开发学习手册

一、入门必看

  1. 应用开发导读(ArkTS)
  2. .……

在这里插入图片描述


二、HarmonyOS 概念

  1. 系统定义
  2. 技术架构
  3. 技术特性
  4. 系统安全

在这里插入图片描述

三、如何快速入门?《鸿蒙基础入门学习指南》

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. .……

在这里插入图片描述


四、开发基础知识

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. .……

在这里插入图片描述


五、基于ArkTS 开发

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 7.网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. .……

在这里插入图片描述


更多了解更多鸿蒙开发的相关知识可以参考:《鸿蒙 (Harmony OS)开发学习手册

http://www.yidumall.com/news/42748.html

相关文章:

  • 企业收录网站免费源码下载网站
  • amazon日本站海外推广代理公司
  • 网站建设进度计划表友情链接搜读
  • php的网站有哪些合肥seo服务商
  • 广东住房城乡建设厅网站首页网站如何进行seo
  • 网站备案注销 万网公司网站建设方案
  • 基于web前端的旅游网站论文网络推广app是干什么的
  • 深圳宝安网站建设工百度人工电话
  • iis做网站主目录选哪里深圳网站设计十年乐云seo
  • 网站图标icoseo怎么做关键词排名
  • 百度的官方网站上海百度推广
  • 做网站用asp还是php好网络营销八大目标是什么
  • webp 做网站本周热点新闻事件
  • 吉安做网站公司深圳外贸网站建设
  • 怎么做企业的网站海洋网络推广效果
  • 十堰网站建设公司电话如何建造自己的网站
  • 自己做网站有哪些方法呢最近最新的新闻
  • 做家政网站搜索引擎关键词快速优化
  • 网站设计制作报价网络推广费用一般多少
  • 吉林省长春市长春网站建设哪家好深圳竞价排名网络推广
  • 青岛李沧建设局网站东莞网络推广托管
  • 外包加工官网沈阳专业网站seo推广
  • 网站开发公司 广告词千万别手贱在百度上搜这些词
  • 网站设计公司推荐奇点网络个人网站规划书模板
  • 网站源码php含有友情链接的网页
  • 做房源网站保定网站制作
  • 西安未央区网站建设陕西网络营销优化公司
  • 供灯放生网站开发营销型外贸网站建设
  • 承德网站建设作用贵港seo
  • 自已创建网站要怎么做关键词搜索工具app