背景设置

2024-01-22 16:08 更新

设置组件的背景样式。

说明

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

属性

名称

参数类型

描述

backgroundColor

ResourceColor

设置组件的背景色。

从API version 9开始,该接口支持在ArkTS卡片中使用。

backgroundImage

src: ResourceStr,

repeat?: ImageRepeat

src:图片地址,支持网络图片资源和本地图片资源地址(不支持svg类型的图片)。

repeat:设置背景图片的重复样式,默认不重复。当设置的背景图片为透明底色图片,且同时设置了backgroundColor时,二者叠加显示,背景颜色在最底部。

从API version 9开始,该接口支持在ArkTS卡片中使用。

backgroundImageSize

{

width?: Length,

height?: Length

} | ImageSize

设置背景图像的高度和宽度。当输入为{width: Length, height: Length}对象时,如果只设置一个属性,则第二个属性保持图片原始宽高比进行调整。默认保持原图的比例不变。

width和height取值范围: [0, +∞)

默认值:ImageSize.Auto

从API version 9开始,该接口支持在ArkTS卡片中使用。

说明:

设置为小于0的值时,按值为0显示。当设置了height未设置width时,width根据图片原始宽高比进行调整。

backgroundImagePosition

Position | Alignment

设置背景图在组件中显示位置,即相对于组件左上角的坐标。

默认值:

{

x: 0,

y: 0

}

x和y值设置百分比时,偏移量是相对组件自身宽高计算的。

从API version 9开始,该接口支持在ArkTS卡片中使用。

示例

  1. // xxx.ets
  2. @Entry
  3. @Component
  4. struct BackgroundExample {
  5. build() {
  6. Column({ space: 5 }) {
  7. Text('background color').fontSize(9).width('90%').fontColor(0xCCCCCC)
  8. Row().width('90%').height(50).backgroundColor(0xE5E5E5).border({ width: 1 })
  9. Text('background image repeat along X').fontSize(9).width('90%').fontColor(0xCCCCCC)
  10. Row()
  11. .backgroundImage('/comment/bg.jpg', ImageRepeat.X)
  12. .backgroundImageSize({ width: '250px', height: '140px' })
  13. .width('90%')
  14. .height(70)
  15. .border({ width: 1 })
  16. Text('background image repeat along Y').fontSize(9).width('90%').fontColor(0xCCCCCC)
  17. Row()
  18. .backgroundImage('/comment/bg.jpg', ImageRepeat.Y)
  19. .backgroundImageSize({ width: '500px', height: '120px' })
  20. .width('90%')
  21. .height(100)
  22. .border({ width: 1 })
  23. Text('background image size').fontSize(9).width('90%').fontColor(0xCCCCCC)
  24. Row()
  25. .width('90%').height(150)
  26. .backgroundImage('/comment/bg.jpg', ImageRepeat.NoRepeat)
  27. .backgroundImageSize({ width: 1000, height: 500 })
  28. .border({ width: 1 })
  29. Text('background fill the box(Cover)').fontSize(9).width('90%').fontColor(0xCCCCCC)
  30. // 不保证图片完整的情况下占满盒子
  31. Row()
  32. .width(200)
  33. .height(50)
  34. .backgroundImage('/comment/bg.jpg', ImageRepeat.NoRepeat)
  35. .backgroundImageSize(ImageSize.Cover)
  36. .border({ width: 1 })
  37. Text('background fill the box(Contain)').fontSize(9).width('90%').fontColor(0xCCCCCC)
  38. // 保证图片完整的情况下放到最大
  39. Row()
  40. .width(200)
  41. .height(50)
  42. .backgroundImage('/comment/bg.jpg', ImageRepeat.NoRepeat)
  43. .backgroundImageSize(ImageSize.Contain)
  44. .border({ width: 1 })
  45. Text('background image position').fontSize(9).width('90%').fontColor(0xCCCCCC)
  46. Row()
  47. .width(100)
  48. .height(50)
  49. .backgroundImage('/comment/bg.jpg', ImageRepeat.NoRepeat)
  50. .backgroundImageSize({ width: 1000, height: 560 })
  51. .backgroundImagePosition({ x: -500, y: -300 })
  52. .border({ width: 1 })
  53. }
  54. .width('100%').height('100%').padding({ top: 5 })
  55. }
  56. }

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号