ZhSingleRow04.ets 3.07 KB
import {  CompDTO, ContentDTO } from 'wdBean';
import {  CommonConstants } from 'wdConstant';
import {  DateTimeUtils } from 'wdKit';
import { ProcessUtils } from '../../utils/ProcessUtils';

/**
 * 本地精选卡
 * ZhSingleRow04
 */

@Component
export struct ZhSingleRow04 {
  @State compDTO: CompDTO = {} as CompDTO

  aboutToAppear() {}

  build() {
    Column(){
      //顶部
      Row(){
        Row() {
          Image($r("app.media.local_selection"))
            .width(24)
            .height(24)
            .margin({ right: 4 })
          Text(this.compDTO.objectTitle)
            .fontSize($r("app.float.font_size_17"))
            .fontColor($r("app.color.color_222222"))
            .fontWeight(600)
        }
        Row() {
          Text("更多")
            .fontSize($r("app.float.font_size_14"))
            .fontColor($r("app.color.color_999999"))
            .margin({ right: 1 })
          Image($r("app.media.more"))
            .width(14)
            .height(14)
        }
      }
      .justifyContent(FlexAlign.SpaceBetween)
      .margin({ top: 8, bottom: 8 })
      .width('100%')
      // 列表内容
      List({ space: 12 }) {
        ForEach(this.compDTO.operDataList, (item: ContentDTO) => {
          ListItem() {
            Row(){
              if(item.coverUrl) {
                Image(item.coverUrl)
                  .width(84)
                  .height(56)
                  .borderRadius(3)
                  .objectFit(ImageFit.Cover)
                  .padding({right: 6})
              }
              Column(){
                Text(item.newsTitle)
                  .fontSize($r("app.float.font_size_16"))
                  .fontColor($r("app.color.color_212228"))
                  .fontWeight(400)
                  .maxLines(2)
                  .textOverflow({ overflow: TextOverflow.Ellipsis })// 超出的部分显示省略号。
                  .margin({ top: 8 })

                Row(){
                  Text(item.source)
                    .fontSize($r('app.float.font_size_12'))
                    .fontColor($r('app.color.color_B0B0B0'))
                    .textOverflow({overflow: TextOverflow.Ellipsis})
                    .maxLines(1)
                    .width(item.source.length > 10 ? '60%' : '')
                  Image($r("app.media.point"))
                    .width(16)
                    .height(16)
                  Text(DateTimeUtils.getCommentTime(Number.parseFloat(this.compDTO.operDataList[0].publishTime)))
                    .fontSize($r("app.float.font_size_12"))
                    .fontColor($r("app.color.color_B0B0B0"))
                }
                .width('100%')
              }
              .width(200)
            }
            // .margin({right: 18})
            .onClick(() =>{
              ProcessUtils.processPage(item)
            })
          }
        })
      }
      .listDirection(Axis.Horizontal)
      .width('100%')
    }
    .width(CommonConstants.FULL_WIDTH)
    .padding({
      top: 14,
      left: 16,
      right: 16,
      bottom: 14
    })
    .backgroundColor($r("app.color.white"))
    .margin({ bottom: 8 })
  }
}