codecamp

栅格设置

说明
  • 从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。

  • 栅格布局的列宽、列间距由距离最近的GridContainer父组件决定。使用栅格属性的组件树上至少需要有1个GridContainer容器组件。

属性

名称

参数类型

描述

useSizeType(deprecated)

{

xs?: number | { span: number, offset: number },

sm?: number | { span: number, offset: number },

md?: number | { span: number, offset: number },

lg?: number | { span: number, offset: number }

}

设置在特定设备宽度类型下的占用列数和偏移列数,span: 占用列数; offset: 偏移列数。

当值为number类型时,仅设置列数, 当格式如{"span": 1, "offset": 0}时,指同时设置占用列数与偏移列数。

- xs: 指设备宽度类型为SizeType.XS时的占用列数和偏移列数。

- sm: 指设备宽度类型为SizeType.SM时的占用列数和偏移列数。

- md: 指设备宽度类型为SizeType.MD时的占用列数和偏移列数。

- lg: 指设备宽度类型为SizeType.LG时的占用列数和偏移列数。

gridSpan

number

默认占用列数,指useSizeType属性没有设置对应尺寸的列数(span)时,占用的栅格列数。

说明:

设置了栅格span属性,组件的宽度由栅格布局决定。

默认值:1

gridOffset

number

默认偏移列数,指useSizeType属性没有设置对应尺寸的偏移(offset)时, 当前组件沿着父组件Start方向,偏移的列数,也就是当前组件位于第n列。

说明:

- 配置该属性后,当前组件在父组件水平方向的布局不再跟随父组件原有的布局方式,而是沿着父组件的Start方向偏移一定位移。

- 偏移位移 = (列宽 + 间距)* 列数。

- 设置了偏移(gridOffset)的组件之后的兄弟组件会根据该组件进行相对布局,类似相对布局。

默认值:0

示例

  1. // xxx.ets
  2. @Entry
  3. @Component
  4. struct GridContainerExample1 {
  5. build() {
  6. Column() {
  7. Text('useSizeType').fontSize(15).fontColor(0xCCCCCC).width('90%')
  8. GridContainer() {
  9. Row({}) {
  10. Row() {
  11. Text('Left').fontSize(25)
  12. }
  13. .useSizeType({
  14. xs: { span: 1, offset: 0 }, sm: { span: 1, offset: 0 },
  15. md: { span: 1, offset: 0 }, lg: { span: 2, offset: 0 }
  16. })
  17. .height("100%")
  18. .backgroundColor(0x66bbb2cb)
  19. Row() {
  20. Text('Center').fontSize(25)
  21. }
  22. .useSizeType({
  23. xs: { span: 1, offset: 0 }, sm: { span: 2, offset: 1 },
  24. md: { span: 5, offset: 1 }, lg: { span: 7, offset: 2 }
  25. })
  26. .height("100%")
  27. .backgroundColor(0x66b6c5d1)
  28. Row() {
  29. Text('Right').fontSize(25)
  30. }
  31. .useSizeType({
  32. xs: { span: 1, offset: 0 }, sm: { span: 1, offset: 3 },
  33. md: { span: 2, offset: 6 }, lg: { span: 3, offset: 9 }
  34. })
  35. .height("100%")
  36. .backgroundColor(0x66bbb2cb)
  37. }
  38. .height(200)
  39. }
  40. .backgroundColor(0xf1f3f5)
  41. .margin({ top: 10 })
  42. // 单独设置组件的span和offset,在sm尺寸大小的设备上使用useSizeType中sm的数据实现一样的效果
  43. Text('gridSpan,gridOffset').fontSize(15).fontColor(0xCCCCCC).width('90%')
  44. GridContainer() {
  45. Row() {
  46. Row() {
  47. Text('Left').fontSize(25)
  48. }
  49. .gridSpan(1)
  50. .height("100%")
  51. .backgroundColor(0x66bbb2cb)
  52. Row() {
  53. Text('Center').fontSize(25)
  54. }
  55. .gridSpan(2)
  56. .gridOffset(1)
  57. .height("100%")
  58. .backgroundColor(0x66b6c5d1)
  59. Row() {
  60. Text('Right').fontSize(25)
  61. }
  62. .gridSpan(1)
  63. .gridOffset(3)
  64. .height("100%")
  65. .backgroundColor(0x66bbb2cb)
  66. }.height(200)
  67. }
  68. }
  69. }
  70. }

图1 设备宽度为SM

图2 设备宽度为MD

图3 设备宽度为LG

图4 单独设置gridSpan和gridOffset在特定屏幕大小下的效果与useSizeType效果一致

文本样式设置
颜色渐变
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

媒体组件

像素

枚举

类型

接口

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }