HarmonyOS 鸿蒙Next应用“丁斗口算”开发记录 (7)

发布于 1周前 作者 phonegap100 来自 鸿蒙OS

HarmonyOS 鸿蒙Next应用“丁斗口算”开发记录 (7)

这个应用已经上架,且已经更新过了,根本贴有一些不一样的地方。有兴趣的朋友可以下载体验。希望能在评论区看到您的建议。

题目页的主要区域,也就是下部区域,使用Row组件实现。Row组件内分为左右两部分,这里的设计思路是高度占满上级组件,宽度按比例分割。

Row() // 主要区域

 {

    Flex({direction: FlexDirection.Column,wrap: FlexWrap.NoWrap })  // 题目区和下部按钮

       {…}             

.width(‘75%’)

.height(‘100%’)

Column()

{…}

  .width(‘25%’)

  .height(‘100%’)

}

左侧部分占宽度的75%,分为上部的题目区域和下部的操作按钮区域。屏幕尺寸和方向不同时,这一部分变化最大。设计思路是,题目区域有固定的题目数量,根据屏幕大小调整每个题目占据的空间。再根据屏幕的方向,调整题目行列数量。因此采用Grid组件实现。Grid组件在宽度方向占满上级组件,高度方向自适应拉伸。下部的控制按钮,考虑到竖屏时宽度太窄一行放不下5个按钮,需要将其中四个按钮设计自动换行。因此下部采用Flex,设置接口参数

direction: FlexDirection.Row,wrap: FlexWrap.NoWrap。

代码如下

Flex({direction: FlexDirection.Column,wrap: FlexWrap.NoWrap })  // 题目区和下部按钮

{

Grid()

{…}

.flexGrow(2)    // 占据剩余区域

                .width(‘100%’)

                .columnsTemplate(this.Orient_V?this.gridcoltemp_v:this.gridcoltemp_h)

                .rowsTemplate(this.Orient_V?this.gridrowtemp_v:this.gridrowtemp_h)

Flex({ direction: FlexDirection.Row,wrap: FlexWrap.NoWrap })         // 下部按钮

{…}

          .height(this.Orient_V?102:48)    // 下部按钮高度恒定

          .width(‘100%’)

}

Grid组件放置题目,它的高度自适应拉伸(.flexGrow(2)),宽度占满上级组件。columnsTemplate和rowsTemplate属性设置了行列数量,根据屏幕方向自动变化。样子可参考之前的帖子。

下部按钮区域,因为“下一题”是经常按动的,所以设计成相对其他按钮更大。Flex内的按钮横向排列,“下一题”单独占据一格,剩下的四个按钮自动换行。

Flex({ direction: FlexDirection.Row,wrap: FlexWrap.NoWrap })         // 下部按钮

      {

            Row()     // 下一题按钮

{…}

                            .width(80).height(‘100%’)

               .justifyContent(FlexAlign.Center).alignItems(VerticalAlign.Center)

Grid()      // 其他四个按钮

{…}

.flexGrow(2).align(Alignment.Center).height(‘100%’)

                .rowsTemplate(this.Orient_V?‘1fr 1fr’:‘1fr’)

               .columnsTemplate(this.Orient_V?‘1fr 1fr’:‘1fr 1fr 1fr 1fr’)

}

至此,完成了主要区域左侧的设计。

1 回复

针对您分享的HarmonyOS鸿蒙Next应用“丁斗口算”的开发记录(7),以下是一些专业的技术要点分享:

在鸿蒙系统的应用开发过程中,确保应用与系统的兼容性至关重要。对于“丁斗口算”这样的教育类应用,需特别关注用户体验及算法的准确性。

  1. 界面适配:利用鸿蒙系统的自适应UI框架,确保应用在不同设备和屏幕尺寸上都能保持良好的显示效果。

  2. 性能优化:针对口算功能的实时性要求,进行代码和算法的优化,确保应用的流畅运行。同时,合理管理内存和CPU资源,避免资源泄漏和过度消耗。

  3. 数据安全性:在应用中加强数据加密和隐私保护,确保用户口算结果和练习数据的安全。

  4. 系统服务集成:充分利用鸿蒙系统的分布式能力,如分布式文件、分布式数据库等,提升应用的跨设备协同体验。

  5. 持续更新:关注鸿蒙系统的更新动态,及时适配新功能和修复已知问题,保持应用的稳定性和兼容性。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html 。希望以上信息对您的开发过程有所帮助,祝您在鸿蒙应用开发上取得更多成果!

回到顶部