
#HarmonyOS NEXT 体验官# 鸿蒙开发之--同一个布局效果多种实现方式 原创
作者:江南
前言:在生活中,我们从家到公司,可以采用乘坐公交车、地铁、骑车、自驾车等多种交通方式,那么在鸿蒙开发过程中,对于同一种布局效果,我们是否可以有类似的思路呢?答案是有的。接下来,我们通过实例来一一学习并且证明。
我们要实现的目标效果如图:
方式一
分析:第一行:是text1和text2,第二行:是text3和text4,所以我们很自然的想起,外层是一个Column,Column里边包含两个Row,每个Row里边包含两个Text,分析好了之后,我们按照思路,写出代码:
方式二
分析:页面的左上角是text1,text1的右侧是text2,text1的正下方是text3,text4在text2的下方并且在text3的右侧。分析好了之后,RelativeContainer符合我们的思路,我们按照思路,写出代码:
解析:
1.RelativeContainer内部子view不做设置的情况下,默认在左上角。
2.anchor:是参照物锚点的id,align:是对应锚点的位置。比如
left:{anchor:‘text1’,align:HorizontalAlign.End}意思就是,在text1的横向尾部为最其左侧。
方式三
分析:页面的左上角是text1,text1宽高都是100px,text2的最左边在页面左上角向右的100px处,text3的最上边在页面左上角先下的100px处,text4的最左边在页面左上角向右的100px处并且最上边在页面左上角先下的100px处。分析好了之后,我们按照思路,Stack符合分析的思路,写出代码:
区别
方式一是两层布局,方式二和方式三是单层布局,嵌套的层级比方式一少,当方式一的思路可能更直接点。
总结
正所谓“条条大路通罗马”,在开发过程中也是一样的,只要我们多思考,多分析,多积累,遇到实际问题时,总会有一种方案是最合适的,加油~小伙伴们!
