Showing
17 changed files
with
198 additions
and
97 deletions
| @@ -29,7 +29,9 @@ export struct WdWebLocalComponent { | @@ -29,7 +29,9 @@ export struct WdWebLocalComponent { | ||
| 29 | @State sliderStartTime: string = ''; | 29 | @State sliderStartTime: string = ''; |
| 30 | @State currentTime: number = 0; | 30 | @State currentTime: number = 0; |
| 31 | @State durationTime: number = 0; | 31 | @State durationTime: number = 0; |
| 32 | + @State progressOpacity: number = 1 | ||
| 32 | @State durationStringTime: string = ''; | 33 | @State durationStringTime: string = ''; |
| 34 | + private progressTimerNumber: number = 0 | ||
| 33 | @State isPause: boolean = true; | 35 | @State isPause: boolean = true; |
| 34 | controller: VideoController = new VideoController() | 36 | controller: VideoController = new VideoController() |
| 35 | @StorageProp('currentBreakpoint') @Watch("currentChanged")currentBreakpoint: string = 'sm'; | 37 | @StorageProp('currentBreakpoint') @Watch("currentChanged")currentBreakpoint: string = 'sm'; |
| @@ -96,12 +98,12 @@ export struct WdWebLocalComponent { | @@ -96,12 +98,12 @@ export struct WdWebLocalComponent { | ||
| 96 | url = url.replace("%(?![0-9a-fA-F]{2})", "%25") | 98 | url = url.replace("%(?![0-9a-fA-F]{2})", "%25") |
| 97 | .replace("\\+", "%2B"); | 99 | .replace("\\+", "%2B"); |
| 98 | url = decodeURIComponent(url) | 100 | url = decodeURIComponent(url) |
| 101 | + Logger.debug(TAG, 'Web onLoadIntercept url: ' + url); | ||
| 99 | if (url.startsWith(BridgeUtil.YY_RETURN_DATA)) { | 102 | if (url.startsWith(BridgeUtil.YY_RETURN_DATA)) { |
| 100 | this.webviewControl.handlerReturnData(url) | 103 | this.webviewControl.handlerReturnData(url) |
| 101 | return true | 104 | return true |
| 102 | } | 105 | } |
| 103 | if (url.startsWith(BridgeUtil.YY_OVERRIDE_SCHEMA)) { | 106 | if (url.startsWith(BridgeUtil.YY_OVERRIDE_SCHEMA)) { |
| 104 | - Logger.debug(TAG, 'flushMessageQueue:'+url); | ||
| 105 | // this.webviewControl.flushMessageQueue() | 107 | // this.webviewControl.flushMessageQueue() |
| 106 | this.webviewControl.receiveDataFromH5(url) | 108 | this.webviewControl.receiveDataFromH5(url) |
| 107 | return true | 109 | return true |
| @@ -172,7 +174,7 @@ export struct WdWebLocalComponent { | @@ -172,7 +174,7 @@ export struct WdWebLocalComponent { | ||
| 172 | this.positionLeft = Number(data?.data?.positionLeft) || 0 | 174 | this.positionLeft = Number(data?.data?.positionLeft) || 0 |
| 173 | this.positionTop = Number(data?.data?.positionTop) || 0 | 175 | this.positionTop = Number(data?.data?.positionTop) || 0 |
| 174 | this.videoLandscape = data?.data?.videoLandscape || '1' | 176 | this.videoLandscape = data?.data?.videoLandscape || '1' |
| 175 | - this.controller.start() | 177 | + this.startPlay() |
| 176 | } | 178 | } |
| 177 | } | 179 | } |
| 178 | /** | 180 | /** |
| @@ -206,6 +208,26 @@ export struct WdWebLocalComponent { | @@ -206,6 +208,26 @@ export struct WdWebLocalComponent { | ||
| 206 | } | 208 | } |
| 207 | } | 209 | } |
| 208 | 210 | ||
| 211 | + startPlay() { | ||
| 212 | + this.cancelProgressTimer() | ||
| 213 | + this.controller.start() | ||
| 214 | + this.startProgressTimer() | ||
| 215 | + } | ||
| 216 | + | ||
| 217 | + startProgressTimer() { | ||
| 218 | + this.progressTimerNumber = setTimeout(() => { | ||
| 219 | + animateTo({duration: 1000}, () => { | ||
| 220 | + this.progressOpacity = 0 | ||
| 221 | + }) | ||
| 222 | + }, 3000) | ||
| 223 | + } | ||
| 224 | + cancelProgressTimer() { | ||
| 225 | + if (this.progressTimerNumber > 0) { | ||
| 226 | + clearTimeout(this.progressTimerNumber) | ||
| 227 | + this.progressTimerNumber = 0 | ||
| 228 | + } | ||
| 229 | + } | ||
| 230 | + | ||
| 209 | @Builder | 231 | @Builder |
| 210 | videoComp(){ | 232 | videoComp(){ |
| 211 | Video({ | 233 | Video({ |
| @@ -221,6 +243,7 @@ export struct WdWebLocalComponent { | @@ -221,6 +243,7 @@ export struct WdWebLocalComponent { | ||
| 221 | .objectFit(ImageFit.Contain) | 243 | .objectFit(ImageFit.Contain) |
| 222 | .onFinish(()=>{ | 244 | .onFinish(()=>{ |
| 223 | this.isEndPlay = true | 245 | this.isEndPlay = true |
| 246 | + this.currentTime = 0 | ||
| 224 | }) | 247 | }) |
| 225 | .onStart(() => { | 248 | .onStart(() => { |
| 226 | this.isPause = false | 249 | this.isPause = false |
| @@ -248,13 +271,23 @@ export struct WdWebLocalComponent { | @@ -248,13 +271,23 @@ export struct WdWebLocalComponent { | ||
| 248 | WindowModel.shared.setPreferredOrientation(window.Orientation.PORTRAIT) | 271 | WindowModel.shared.setPreferredOrientation(window.Orientation.PORTRAIT) |
| 249 | } | 272 | } |
| 250 | }) | 273 | }) |
| 274 | + .onClick(() => { | ||
| 275 | + animateTo({duration: 1000}, () => { | ||
| 276 | + if (this.progressOpacity <= 0) { | ||
| 277 | + this.progressOpacity = 1 | ||
| 278 | + } else { | ||
| 279 | + this.progressOpacity = 0 | ||
| 280 | + } | ||
| 281 | + }) | ||
| 282 | + }) | ||
| 251 | 283 | ||
| 252 | if (this.isEndPlay){ | 284 | if (this.isEndPlay){ |
| 253 | Column(){ | 285 | Column(){ |
| 254 | Image($r('app.media.icon_replay')).width(40).height(40) | 286 | Image($r('app.media.icon_replay')).width(40).height(40) |
| 255 | .onClick(() => { | 287 | .onClick(() => { |
| 256 | this.isEndPlay = false | 288 | this.isEndPlay = false |
| 257 | - this.controller.start() | 289 | + this.progressOpacity = 1 |
| 290 | + this.startPlay() | ||
| 258 | }) | 291 | }) |
| 259 | 292 | ||
| 260 | Text('重播').fontColor(Color.White).fontSize(14) | 293 | Text('重播').fontColor(Color.White).fontSize(14) |
| @@ -271,9 +304,10 @@ export struct WdWebLocalComponent { | @@ -271,9 +304,10 @@ export struct WdWebLocalComponent { | ||
| 271 | .height(24) | 304 | .height(24) |
| 272 | .onClick(() => { | 305 | .onClick(() => { |
| 273 | if (this.isPause) { | 306 | if (this.isPause) { |
| 274 | - this.controller.start() | 307 | + this.startPlay() |
| 275 | } else { | 308 | } else { |
| 276 | this.controller.pause() | 309 | this.controller.pause() |
| 310 | + this.cancelProgressTimer() | ||
| 277 | } | 311 | } |
| 278 | }) | 312 | }) |
| 279 | Row() { | 313 | Row() { |
| @@ -298,6 +332,13 @@ export struct WdWebLocalComponent { | @@ -298,6 +332,13 @@ export struct WdWebLocalComponent { | ||
| 298 | .blockSize({ width: 18, height: 12 }) | 332 | .blockSize({ width: 18, height: 12 }) |
| 299 | .onChange((value: number, mode: SliderChangeMode) => { | 333 | .onChange((value: number, mode: SliderChangeMode) => { |
| 300 | this.controller.setCurrentTime(value); | 334 | this.controller.setCurrentTime(value); |
| 335 | + if (mode == SliderChangeMode.End) { | ||
| 336 | + if (this.isPause) { | ||
| 337 | + this.startPlay() | ||
| 338 | + } else { | ||
| 339 | + this.startProgressTimer() | ||
| 340 | + } | ||
| 341 | + } | ||
| 301 | }) | 342 | }) |
| 302 | Text(DateTimeUtils.getFormattedDuration(this.durationTime * 1000)) | 343 | Text(DateTimeUtils.getFormattedDuration(this.durationTime * 1000)) |
| 303 | .fontSize(12) | 344 | .fontSize(12) |
| @@ -313,7 +354,11 @@ export struct WdWebLocalComponent { | @@ -313,7 +354,11 @@ export struct WdWebLocalComponent { | ||
| 313 | // this.controller.requestFullscreen(true) | 354 | // this.controller.requestFullscreen(true) |
| 314 | // }) | 355 | // }) |
| 315 | } | 356 | } |
| 316 | - .opacity(0.8) | 357 | + .opacity(this.progressOpacity) |
| 358 | + .linearGradient({ | ||
| 359 | + direction: GradientDirection.Top, // 渐变方向 | ||
| 360 | + colors: [[0x20000000, 0.0], [Color.Transparent, 1.0]] // [0x80000000, 0.5], | ||
| 361 | + }) | ||
| 317 | .width("100%") | 362 | .width("100%") |
| 318 | .justifyContent(FlexAlign.SpaceAround) | 363 | .justifyContent(FlexAlign.SpaceAround) |
| 319 | } | 364 | } |
| @@ -199,6 +199,9 @@ export struct H5NewsWebPageComponent { | @@ -199,6 +199,9 @@ export struct H5NewsWebPageComponent { | ||
| 199 | 199 | ||
| 200 | // 已登录->查询用户对作品点赞、收藏状态 | 200 | // 已登录->查询用户对作品点赞、收藏状态 |
| 201 | private async getInteractDataStatus() { | 201 | private async getInteractDataStatus() { |
| 202 | + if (!HttpUtils.isLogin()) { | ||
| 203 | + return | ||
| 204 | + } | ||
| 202 | try { | 205 | try { |
| 203 | const params: batchLikeAndCollectParams = { | 206 | const params: batchLikeAndCollectParams = { |
| 204 | contentList: [ | 207 | contentList: [ |
| @@ -40,7 +40,7 @@ import { LottieView } from '../components/lottie/LottieView'; | @@ -40,7 +40,7 @@ import { LottieView } from '../components/lottie/LottieView'; | ||
| 40 | 40 | ||
| 41 | const PATTERN_DATE_CN_RN: string = 'yyyy年MM月dd日 HH:mm'; | 41 | const PATTERN_DATE_CN_RN: string = 'yyyy年MM月dd日 HH:mm'; |
| 42 | 42 | ||
| 43 | -const TAG: string = 'ImageAndTextPageComponent' | 43 | +const TAG: string = 'ImageAndTextWebComponent' |
| 44 | /** | 44 | /** |
| 45 | * 图文详情页 | 45 | * 图文详情页 |
| 46 | * */ | 46 | * */ |
| @@ -410,6 +410,9 @@ export struct ImageAndTextPageComponent { | @@ -410,6 +410,9 @@ export struct ImageAndTextPageComponent { | ||
| 410 | 410 | ||
| 411 | // 已登录->查询用户对作品点赞、收藏状态 | 411 | // 已登录->查询用户对作品点赞、收藏状态 |
| 412 | private async getInteractDataStatus() { | 412 | private async getInteractDataStatus() { |
| 413 | + if (!HttpUtils.isLogin()) { | ||
| 414 | + return | ||
| 415 | + } | ||
| 413 | try { | 416 | try { |
| 414 | const params: batchLikeAndCollectParams = { | 417 | const params: batchLikeAndCollectParams = { |
| 415 | contentList: [ | 418 | contentList: [ |
| @@ -512,6 +515,7 @@ export struct ImageAndTextPageComponent { | @@ -512,6 +515,7 @@ export struct ImageAndTextPageComponent { | ||
| 512 | } | 515 | } |
| 513 | 516 | ||
| 514 | aboutToAppear() { | 517 | aboutToAppear() { |
| 518 | + Logger.debug(TAG, '文章详情页 aboutToAppear,开始请求接口数据'); | ||
| 515 | this.getDetail() | 519 | this.getDetail() |
| 516 | this.screenHeight = DisplayUtils.getDeviceHeight() | 520 | this.screenHeight = DisplayUtils.getDeviceHeight() |
| 517 | this.initAnimationConfig(); | 521 | this.initAnimationConfig(); |
| @@ -24,6 +24,7 @@ export struct ImageAndTextWebComponent { | @@ -24,6 +24,7 @@ export struct ImageAndTextWebComponent { | ||
| 24 | private webPrepared = false; | 24 | private webPrepared = false; |
| 25 | private dataPrepared = false; | 25 | private dataPrepared = false; |
| 26 | async onDetailDataUpdated() { | 26 | async onDetailDataUpdated() { |
| 27 | + Logger.debug(TAG, '详情内容已获取接口数据'); | ||
| 27 | if (this.action) { | 28 | if (this.action) { |
| 28 | let contentId: string = '' | 29 | let contentId: string = '' |
| 29 | let contentType: string = '' | 30 | let contentType: string = '' |
| @@ -92,6 +93,10 @@ export struct ImageAndTextWebComponent { | @@ -92,6 +93,10 @@ export struct ImageAndTextWebComponent { | ||
| 92 | 93 | ||
| 93 | } | 94 | } |
| 94 | 95 | ||
| 96 | + aboutToAppear(): void { | ||
| 97 | + Logger.debug(TAG, 'H5模板加载控件 aboutToAppear'); | ||
| 98 | + } | ||
| 99 | + | ||
| 95 | build() { | 100 | build() { |
| 96 | Column() { | 101 | Column() { |
| 97 | WdWebLocalComponent({ | 102 | WdWebLocalComponent({ |
| @@ -115,15 +120,16 @@ export struct ImageAndTextWebComponent { | @@ -115,15 +120,16 @@ export struct ImageAndTextWebComponent { | ||
| 115 | } | 120 | } |
| 116 | 121 | ||
| 117 | private onWebPrepared() { | 122 | private onWebPrepared() { |
| 123 | + Logger.debug(TAG, 'H5模板已加载,prepared'); | ||
| 118 | this.webPrepared = true | 124 | this.webPrepared = true |
| 119 | this.trySendData2H5() | 125 | this.trySendData2H5() |
| 120 | } | 126 | } |
| 121 | 127 | ||
| 122 | private sendContentData2H5(h5ReceiveAppData: H5ReceiveDetailBean) { | 128 | private sendContentData2H5(h5ReceiveAppData: H5ReceiveDetailBean) { |
| 123 | let jsonString = JSON.stringify(h5ReceiveAppData); | 129 | let jsonString = JSON.stringify(h5ReceiveAppData); |
| 124 | - Logger.debug('ImageAndTextWebComponent', 'jsCall_receiveAppData',jsonString); | 130 | + Logger.debug(TAG, '传递html数据至H5 jsCall_receiveAppData',jsonString); |
| 125 | this.webviewControl.callHandle(NativeCallH5Type.jsCall_receiveAppData, jsonString, (data: string) => { | 131 | this.webviewControl.callHandle(NativeCallH5Type.jsCall_receiveAppData, jsonString, (data: string) => { |
| 126 | - Logger.debug('ImageAndTextWebComponent', "from js data = " + data); | 132 | + Logger.debug(TAG, "from js data = " + data); |
| 127 | }) | 133 | }) |
| 128 | } | 134 | } |
| 129 | } | 135 | } |
| @@ -578,48 +578,53 @@ struct footerExpandedView { | @@ -578,48 +578,53 @@ struct footerExpandedView { | ||
| 578 | 578 | ||
| 579 | build() { | 579 | build() { |
| 580 | Row() { | 580 | Row() { |
| 581 | - if (this.item.expanded) { | ||
| 582 | - Row() { | ||
| 583 | - Text().backgroundColor($r('app.color.color_EDEDED')).width(24).height(1) | ||
| 584 | - if (this.item.childsHasMore) { | 581 | + Row() { |
| 582 | + if (this.item.expanded) { | ||
| 583 | + Row() { | ||
| 584 | + Text().backgroundColor($r('app.color.color_EDEDED')).width(24).height(1) | ||
| 585 | + if (this.item.childsHasMore) { | ||
| 586 | + Row() { | ||
| 587 | + Text('查看更多回复').fontColor($r('app.color.color_222222')).fontSize(14) | ||
| 588 | + Image($r('app.media.comment_unfold')).width(12).height(12) | ||
| 589 | + }.margin({ left: 6 }) | ||
| 590 | + .onClick(() => { | ||
| 591 | + if (this.item.isLoading) { | ||
| 592 | + return | ||
| 593 | + } | ||
| 594 | + this.item.isLoading = true | ||
| 595 | + fetchChildContentCommentList(this.contentId, this.contentType, this.item) | ||
| 596 | + }) | ||
| 597 | + } | ||
| 585 | Row() { | 598 | Row() { |
| 586 | - Text('查看更多回复').fontColor($r('app.color.color_222222')).fontSize(14) | ||
| 587 | - Image($r('app.media.comment_unfold')).width(12).height(12) | 599 | + Text('收起').fontColor($r('app.color.color_222222')).fontSize(14) |
| 600 | + Image($r('app.media.comment_pickUp')).width(12).height(12) | ||
| 588 | }.margin({ left: 6 }) | 601 | }.margin({ left: 6 }) |
| 589 | .onClick(() => { | 602 | .onClick(() => { |
| 590 | - if (this.item.isLoading) { | ||
| 591 | - return | ||
| 592 | - } | ||
| 593 | - this.item.isLoading = true | ||
| 594 | - fetchChildContentCommentList(this.contentId, this.contentType, this.item) | 603 | + this.item.pageNum = 1 |
| 604 | + this.item.expanded = false | ||
| 605 | + this.item.childComments = [] | ||
| 606 | + this.item.childCommentsLazyDataSource.clear() | ||
| 595 | }) | 607 | }) |
| 596 | - } | 608 | + }.margin({ left: 53 }) |
| 609 | + } else { | ||
| 597 | Row() { | 610 | Row() { |
| 598 | - Text('收起').fontColor($r('app.color.color_222222')).fontSize(14) | ||
| 599 | - Image($r('app.media.comment_pickUp')).width(12).height(12) | ||
| 600 | - }.margin({ left: 6 }) | 611 | + Text().backgroundColor($r('app.color.color_EDEDED')).width(24).height(1) |
| 612 | + Text('查看更多回复').fontColor($r('app.color.color_222222')).fontSize(14).margin({ left: 6 }) | ||
| 613 | + Image($r('app.media.comment_unfold')).width(12).height(12) | ||
| 614 | + }.margin({ left: 53 }) | ||
| 601 | .onClick(() => { | 615 | .onClick(() => { |
| 602 | - this.item.pageNum = 1 | ||
| 603 | - this.item.expanded = false | ||
| 604 | - this.item.childComments = [] | ||
| 605 | - this.item.childCommentsLazyDataSource.clear() | 616 | + if (this.item.isLoading) { |
| 617 | + return | ||
| 618 | + } | ||
| 619 | + this.item.isLoading = true | ||
| 620 | + fetchChildContentCommentList(this.contentId, this.contentType, this.item) | ||
| 606 | }) | 621 | }) |
| 607 | - }.margin({ left: 53 }) | ||
| 608 | - } else { | ||
| 609 | - Row() { | ||
| 610 | - Text().backgroundColor($r('app.color.color_EDEDED')).width(24).height(1) | ||
| 611 | - Text('查看更多回复').fontColor($r('app.color.color_222222')).fontSize(14).margin({ left: 6 }) | ||
| 612 | - Image($r('app.media.comment_unfold')).width(12).height(12) | ||
| 613 | - }.margin({ left: 53 }) | ||
| 614 | - .onClick(() => { | ||
| 615 | - if (this.item.isLoading) { | ||
| 616 | - return | ||
| 617 | - } | ||
| 618 | - this.item.isLoading = true | ||
| 619 | - fetchChildContentCommentList(this.contentId, this.contentType, this.item) | ||
| 620 | - }) | ||
| 621 | - } | ||
| 622 | - }.height(30) | 622 | + } |
| 623 | + }.height(20) | ||
| 624 | + // .backgroundColor(Color.Green) | ||
| 625 | + }.height(24) | ||
| 626 | + .alignItems(VerticalAlign.Top) | ||
| 627 | + // .backgroundColor(Color.Gray) | ||
| 623 | } | 628 | } |
| 624 | } | 629 | } |
| 625 | 630 |
| @@ -599,6 +599,7 @@ struct ChannelSubscriptionLayout { | @@ -599,6 +599,7 @@ struct ChannelSubscriptionLayout { | ||
| 599 | } | 599 | } |
| 600 | .width(36) | 600 | .width(36) |
| 601 | .height(40) | 601 | .height(40) |
| 602 | + .margin({right: 6}) | ||
| 602 | .justifyContent(FlexAlign.Center) | 603 | .justifyContent(FlexAlign.Center) |
| 603 | .onClick(() => { | 604 | .onClick(() => { |
| 604 | this.isShow = true | 605 | this.isShow = true |
| @@ -16,8 +16,8 @@ export struct PeopleShipHomePageHeadComponent { | @@ -16,8 +16,8 @@ export struct PeopleShipHomePageHeadComponent { | ||
| 16 | .borderRadius(this.diameter/2) | 16 | .borderRadius(this.diameter/2) |
| 17 | // .borderWidth('0.5vp') | 17 | // .borderWidth('0.5vp') |
| 18 | .border({ | 18 | .border({ |
| 19 | - width: 2, | ||
| 20 | - color: Color.White, // 5% 透明度的黑色 | 19 | + width: 1, |
| 20 | + color: $r('app.color.color_0D000000'), // 5% 透明度的黑色 | ||
| 21 | style: BorderStyle.Solid | 21 | style: BorderStyle.Solid |
| 22 | }) | 22 | }) |
| 23 | // .borderStyle(BorderStyle.Solid) | 23 | // .borderStyle(BorderStyle.Solid) |
| @@ -228,7 +228,7 @@ export struct OperRowListView { | @@ -228,7 +228,7 @@ export struct OperRowListView { | ||
| 228 | } | 228 | } |
| 229 | router.back(); | 229 | router.back(); |
| 230 | }) | 230 | }) |
| 231 | - | 231 | + Blank().width(10).visibility(this.showBackIcon ? Visibility.None : Visibility.Visible) |
| 232 | 232 | ||
| 233 | if (this.contentDetailData?.newsId) { | 233 | if (this.contentDetailData?.newsId) { |
| 234 | ForEach(this.operationButtonList, (item: string, index: number) => { | 234 | ForEach(this.operationButtonList, (item: string, index: number) => { |
| @@ -5,7 +5,7 @@ import { TopPlayComponent } from '../widgets/details/video/TopPlayComponet'; | @@ -5,7 +5,7 @@ import { TopPlayComponent } from '../widgets/details/video/TopPlayComponet'; | ||
| 5 | import { DisplayDirection } from 'wdConstant/Index'; | 5 | import { DisplayDirection } from 'wdConstant/Index'; |
| 6 | import mediaquery from '@ohos.mediaquery'; | 6 | import mediaquery from '@ohos.mediaquery'; |
| 7 | import { CustomToast, Logger, WindowModel } from 'wdKit/Index'; | 7 | import { CustomToast, Logger, WindowModel } from 'wdKit/Index'; |
| 8 | -import { router, window } from '@kit.ArkUI'; | 8 | +import { display, router, window } from '@kit.ArkUI'; |
| 9 | import { WDAliPlayerController } from 'wdPlayer/Index'; | 9 | import { WDAliPlayerController } from 'wdPlayer/Index'; |
| 10 | import { LiveOperRowListView } from 'wdComponent'; | 10 | import { LiveOperRowListView } from 'wdComponent'; |
| 11 | import { publishCommentModel } from 'wdComponent/src/main/ets/components/comment/model/PublishCommentModel'; | 11 | import { publishCommentModel } from 'wdComponent/src/main/ets/components/comment/model/PublishCommentModel'; |
| @@ -49,8 +49,9 @@ export struct DetailPlayLivePage { | @@ -49,8 +49,9 @@ export struct DetailPlayLivePage { | ||
| 49 | @Provide banComment: boolean = true | 49 | @Provide banComment: boolean = true |
| 50 | @State isEnd: boolean = false | 50 | @State isEnd: boolean = false |
| 51 | @Consume liveDetailPageLogic: LiveDetailPageLogic | 51 | @Consume liveDetailPageLogic: LiveDetailPageLogic |
| 52 | - | ||
| 53 | @State toastText: ResourceStr = "这是一个非Wi-Fi环境。请注意流量消耗" | 52 | @State toastText: ResourceStr = "这是一个非Wi-Fi环境。请注意流量消耗" |
| 53 | + @State topPlayHeight:number = this.getTopPlayHeight() | ||
| 54 | + @StorageProp('currentBreakpoint') @Watch("currentChanged")currentBreakpoint: string = 'sm'; | ||
| 54 | dialogToast: CustomDialogController = new CustomDialogController({ | 55 | dialogToast: CustomDialogController = new CustomDialogController({ |
| 55 | builder: CustomToast({ | 56 | builder: CustomToast({ |
| 56 | bgColor: 0xB3000000, | 57 | bgColor: 0xB3000000, |
| @@ -162,7 +163,7 @@ export struct DetailPlayLivePage { | @@ -162,7 +163,7 @@ export struct DetailPlayLivePage { | ||
| 162 | build() { | 163 | build() { |
| 163 | Column() { | 164 | Column() { |
| 164 | TopPlayComponent({ playerController: this.playerController, isEnd: this.isEnd, lastLiveControl: this.lastLiveControl }) | 165 | TopPlayComponent({ playerController: this.playerController, isEnd: this.isEnd, lastLiveControl: this.lastLiveControl }) |
| 165 | - .height(this.displayDirection == DisplayDirection.VERTICAL ? 211 : '100%') | 166 | + .height(this.displayDirection == DisplayDirection.VERTICAL ? this.topPlayHeight : '100%') |
| 166 | .margin({ | 167 | .margin({ |
| 167 | top: this.displayDirection == DisplayDirection.VERTICAL ? px2vp(this.topSafeHeight) : 0 | 168 | top: this.displayDirection == DisplayDirection.VERTICAL ? px2vp(this.topSafeHeight) : 0 |
| 168 | }) | 169 | }) |
| @@ -274,4 +275,14 @@ export struct DetailPlayLivePage { | @@ -274,4 +275,14 @@ export struct DetailPlayLivePage { | ||
| 274 | 275 | ||
| 275 | }) | 276 | }) |
| 276 | } | 277 | } |
| 278 | + | ||
| 279 | + getTopPlayHeight() { | ||
| 280 | + let screenWidth = display.getDefaultDisplaySync().width | ||
| 281 | + return px2vp(screenWidth) * 9/16.0 | ||
| 282 | + } | ||
| 283 | + | ||
| 284 | + currentChanged() { | ||
| 285 | + this.topPlayHeight = this.getTopPlayHeight() | ||
| 286 | + } | ||
| 287 | + | ||
| 277 | } | 288 | } |
| @@ -109,6 +109,7 @@ export struct DetailPlayShortVideoPage { | @@ -109,6 +109,7 @@ export struct DetailPlayShortVideoPage { | ||
| 109 | * 监听下标变化手动创建或销毁视频 | 109 | * 监听下标变化手动创建或销毁视频 |
| 110 | */ | 110 | */ |
| 111 | async currentIndexChange() { | 111 | async currentIndexChange() { |
| 112 | + // console.log(TAG, 'currentIndex:', this.currentIndex,'index:', this.index) | ||
| 112 | if (this.currentIndex != this.index) { | 113 | if (this.currentIndex != this.index) { |
| 113 | this.playerController.pause() | 114 | this.playerController.pause() |
| 114 | if (this.index <= this.currentIndex - 2 && this.playerController.getPlayer()) { | 115 | if (this.index <= this.currentIndex - 2 && this.playerController.getPlayer()) { |
| @@ -156,7 +157,7 @@ export struct DetailPlayShortVideoPage { | @@ -156,7 +157,7 @@ export struct DetailPlayShortVideoPage { | ||
| 156 | } | 157 | } |
| 157 | // 已登录->查询用户对作品点赞、收藏状态 | 158 | // 已登录->查询用户对作品点赞、收藏状态 |
| 158 | ContentDetailRequest.postBatchLikeAndCollectStatus(params).then(res => { | 159 | ContentDetailRequest.postBatchLikeAndCollectStatus(params).then(res => { |
| 159 | - console.log('查询点赞、收藏状态==', JSON.stringify(res.data)) | 160 | + // console.log('查询点赞、收藏状态==', JSON.stringify(res.data)) |
| 160 | if (res.data) { | 161 | if (res.data) { |
| 161 | this.newsStatusOfUser = res.data[0] | 162 | this.newsStatusOfUser = res.data[0] |
| 162 | } | 163 | } |
| @@ -167,7 +168,7 @@ export struct DetailPlayShortVideoPage { | @@ -167,7 +168,7 @@ export struct DetailPlayShortVideoPage { | ||
| 167 | } | 168 | } |
| 168 | // 已登录->批量查作品是否被号主关注 | 169 | // 已登录->批量查作品是否被号主关注 |
| 169 | ContentDetailRequest.postBatchAttentionStatus(params1).then(res => { | 170 | ContentDetailRequest.postBatchAttentionStatus(params1).then(res => { |
| 170 | - console.log('批量查号主是否为用户关注==', JSON.stringify(res.data)) | 171 | + // console.log('批量查号主是否为用户关注==', JSON.stringify(res.data)) |
| 171 | if (res.data) { | 172 | if (res.data) { |
| 172 | this.followStatus = res.data[0]?.status | 173 | this.followStatus = res.data[0]?.status |
| 173 | } | 174 | } |
| @@ -182,10 +183,11 @@ export struct DetailPlayShortVideoPage { | @@ -182,10 +183,11 @@ export struct DetailPlayShortVideoPage { | ||
| 182 | contentType: this.contentDetailData?.newsType || 0, | 183 | contentType: this.contentDetailData?.newsType || 0, |
| 183 | }] | 184 | }] |
| 184 | } | 185 | } |
| 185 | - ContentDetailRequest.postInteractBrowsOperate(params2).then(res => { | ||
| 186 | - console.log('记录浏览历史==', JSON.stringify(res.data)) | ||
| 187 | - | ||
| 188 | - }) | 186 | + ContentDetailRequest.postInteractBrowsOperate(params2) |
| 187 | + // .then(res => { | ||
| 188 | + // // console.log('记录浏览历史==', JSON.stringify(res.data)) | ||
| 189 | + // | ||
| 190 | + // }) | ||
| 189 | } | 191 | } |
| 190 | 192 | ||
| 191 | } | 193 | } |
| @@ -195,7 +197,7 @@ export struct DetailPlayShortVideoPage { | @@ -195,7 +197,7 @@ export struct DetailPlayShortVideoPage { | ||
| 195 | if (!this.onlyWifiLoadVideo) { | 197 | if (!this.onlyWifiLoadVideo) { |
| 196 | this.onlyWifiLoadVideo = await onlyWifiLoadVideo() | 198 | this.onlyWifiLoadVideo = await onlyWifiLoadVideo() |
| 197 | this.toastTextVisible = this.onlyWifiLoadVideo ? false : true | 199 | this.toastTextVisible = this.onlyWifiLoadVideo ? false : true |
| 198 | - console.log(TAG, 'this.onlyWifiLoadVideo', this.onlyWifiLoadVideo) | 200 | + // console.log(TAG, 'this.onlyWifiLoadVideo', this.onlyWifiLoadVideo) |
| 199 | } | 201 | } |
| 200 | 202 | ||
| 201 | this.videoLandScape = this.contentDetailData.videoInfo[0]?.videoLandScape | 203 | this.videoLandScape = this.contentDetailData.videoInfo[0]?.videoLandScape |
| @@ -241,12 +243,12 @@ export struct DetailPlayShortVideoPage { | @@ -241,12 +243,12 @@ export struct DetailPlayShortVideoPage { | ||
| 241 | } else if (this.contentDetailData.newsType == 14 || this.contentDetailData.newsType == 15) { | 243 | } else if (this.contentDetailData.newsType == 14 || this.contentDetailData.newsType == 15) { |
| 242 | this.PageName = TrackConstants.PageName.DynamicDetail // 动态图文/动态视频 | 244 | this.PageName = TrackConstants.PageName.DynamicDetail // 动态图文/动态视频 |
| 243 | } | 245 | } |
| 244 | - console.log('视频详情页', JSON.stringify(this.pageParam)) | ||
| 245 | - console.log('视频详情页2', JSON.stringify(this.PageName)) | 246 | + // console.log('视频详情页', JSON.stringify(this.pageParam)) |
| 247 | + // console.log('视频详情页2', JSON.stringify(this.PageName)) | ||
| 246 | } | 248 | } |
| 247 | 249 | ||
| 248 | async aboutToDisappear(): Promise<void> { | 250 | async aboutToDisappear(): Promise<void> { |
| 249 | - console.log(TAG, 'aboutToDisappear', this.index) | 251 | + // console.log(TAG, 'aboutToDisappear', this.index) |
| 250 | await this.playerController?.pause() | 252 | await this.playerController?.pause() |
| 251 | // await this.playerController?.stop() | 253 | // await this.playerController?.stop() |
| 252 | // await this.playerController?.release(); | 254 | // await this.playerController?.release(); |
| @@ -310,11 +312,11 @@ export struct DetailPlayShortVideoPage { | @@ -310,11 +312,11 @@ export struct DetailPlayShortVideoPage { | ||
| 310 | } | 312 | } |
| 311 | }) | 313 | }) |
| 312 | this.playerViewBuilder() | 314 | this.playerViewBuilder() |
| 313 | - if (this.index === this.currentIndex) { | ||
| 314 | - PlayerBottomView({ | ||
| 315 | - playerController: this.playerController | ||
| 316 | - }) | ||
| 317 | - } | 315 | + PlayerBottomView({ |
| 316 | + playerController: this.playerController, | ||
| 317 | + index: this.index, | ||
| 318 | + currentIndex: this.currentIndex, | ||
| 319 | + }) | ||
| 318 | 320 | ||
| 319 | PlayerRightView({ | 321 | PlayerRightView({ |
| 320 | playerController: this.playerController | 322 | playerController: this.playerController |
| @@ -349,6 +351,7 @@ export struct DetailPlayShortVideoPage { | @@ -349,6 +351,7 @@ export struct DetailPlayShortVideoPage { | ||
| 349 | operationButtonList: ['comment',], | 351 | operationButtonList: ['comment',], |
| 350 | contentDetailData: this.contentDetailData, | 352 | contentDetailData: this.contentDetailData, |
| 351 | publishCommentModel: this.publishCommentModel, | 353 | publishCommentModel: this.publishCommentModel, |
| 354 | + interactData:this.interactData, | ||
| 352 | showCommentIcon: false, | 355 | showCommentIcon: false, |
| 353 | onBack: () => { | 356 | onBack: () => { |
| 354 | // WindowModel.shared.setWindowLayoutFullScreen(false) | 357 | // WindowModel.shared.setWindowLayoutFullScreen(false) |
| @@ -98,7 +98,7 @@ export struct VideoChannelDetail { | @@ -98,7 +98,7 @@ export struct VideoChannelDetail { | ||
| 98 | this.switchVideoStatus = false | 98 | this.switchVideoStatus = false |
| 99 | this.closeFullScreen() | 99 | this.closeFullScreen() |
| 100 | 100 | ||
| 101 | - console.log(TAG, '一级视频隐藏') | 101 | + // console.log(TAG, '一级视频隐藏') |
| 102 | this.pageHideTime = DateTimeUtils.getTimeStamp() | 102 | this.pageHideTime = DateTimeUtils.getTimeStamp() |
| 103 | let duration = 0 | 103 | let duration = 0 |
| 104 | duration = Math.floor((this.pageHideTime - this.pageShowTime) / 1000) | 104 | duration = Math.floor((this.pageHideTime - this.pageShowTime) / 1000) |
| @@ -110,7 +110,7 @@ export struct VideoChannelDetail { | @@ -110,7 +110,7 @@ export struct VideoChannelDetail { | ||
| 110 | * 监听视频频道激活或失活 | 110 | * 监听视频频道激活或失活 |
| 111 | */ | 111 | */ |
| 112 | navIndexChange() { | 112 | navIndexChange() { |
| 113 | - console.log('navIndexChange', this.bottomNavIndex, this.topNavIndex) | 113 | + // console.log('navIndexChange', this.bottomNavIndex, this.topNavIndex) |
| 114 | if (this.bottomNavIndex === 2 && this.topNavIndex === 0) { | 114 | if (this.bottomNavIndex === 2 && this.topNavIndex === 0) { |
| 115 | // this.barBackgroundColor = Color.Black | 115 | // this.barBackgroundColor = Color.Black |
| 116 | this.switchVideoStatus = true | 116 | this.switchVideoStatus = true |
| @@ -139,12 +139,12 @@ export struct VideoChannelDetail { | @@ -139,12 +139,12 @@ export struct VideoChannelDetail { | ||
| 139 | 139 | ||
| 140 | aboutToAppear() { | 140 | aboutToAppear() { |
| 141 | this.getDetail() | 141 | this.getDetail() |
| 142 | - Logger.info(TAG, 'aboutToAppear'); | 142 | + // Logger.info(TAG, 'aboutToAppear'); |
| 143 | } | 143 | } |
| 144 | 144 | ||
| 145 | aboutToDisappear(): void { | 145 | aboutToDisappear(): void { |
| 146 | this.closeFullScreen() | 146 | this.closeFullScreen() |
| 147 | - Logger.info(TAG, 'aboutToDisappear'); | 147 | + // Logger.info(TAG, 'aboutToDisappear'); |
| 148 | } | 148 | } |
| 149 | 149 | ||
| 150 | /** | 150 | /** |
| @@ -209,7 +209,7 @@ export struct VideoChannelDetail { | @@ -209,7 +209,7 @@ export struct VideoChannelDetail { | ||
| 209 | 209 | ||
| 210 | await ContentDetailRequest.getRecCompInfo(params).then(async res => { | 210 | await ContentDetailRequest.getRecCompInfo(params).then(async res => { |
| 211 | this.isOffLine = res.data == null ? true : false | 211 | this.isOffLine = res.data == null ? true : false |
| 212 | - console.log('根据视频频道传参查询视频楼层信息totalCount', res.data?.totalCount + '') | 212 | + // console.log('根据视频频道传参查询视频楼层信息totalCount', res.data?.totalCount + '') |
| 213 | 213 | ||
| 214 | this.totalCount = res.data?.totalCount || 0 | 214 | this.totalCount = res.data?.totalCount || 0 |
| 215 | const list1: batchContentDetailParams = { | 215 | const list1: batchContentDetailParams = { |
| @@ -259,7 +259,7 @@ export struct VideoChannelDetail { | @@ -259,7 +259,7 @@ export struct VideoChannelDetail { | ||
| 259 | this.data = this.data.concat(res.data) | 259 | this.data = this.data.concat(res.data) |
| 260 | this.dataContentDetail.addItems(res.data) | 260 | this.dataContentDetail.addItems(res.data) |
| 261 | } | 261 | } |
| 262 | - console.log('根据视频楼层信息批量查询视频列表', JSON.stringify(res.data)) | 262 | + // console.log('根据视频楼层信息批量查询视频列表', JSON.stringify(res.data)) |
| 263 | }).finally(() => { | 263 | }).finally(() => { |
| 264 | setTimeout(() => { | 264 | setTimeout(() => { |
| 265 | this.isRequesting = false | 265 | this.isRequesting = false |
| @@ -280,7 +280,7 @@ export struct VideoChannelDetail { | @@ -280,7 +280,7 @@ export struct VideoChannelDetail { | ||
| 280 | if (res.data) { | 280 | if (res.data) { |
| 281 | this.interactDataList = this.interactDataList.concat(res.data) | 281 | this.interactDataList = this.interactDataList.concat(res.data) |
| 282 | } | 282 | } |
| 283 | - console.log('根据视频信息批量查询点赞、收藏状态', res.data) | 283 | + // console.log('根据视频信息批量查询点赞、收藏状态', res.data) |
| 284 | }) | 284 | }) |
| 285 | } | 285 | } |
| 286 | } | 286 | } |
| @@ -328,7 +328,7 @@ export struct VideoChannelDetail { | @@ -328,7 +328,7 @@ export struct VideoChannelDetail { | ||
| 328 | .height('100%') | 328 | .height('100%') |
| 329 | .onChange((index: number) => { | 329 | .onChange((index: number) => { |
| 330 | this.currentIndex = index | 330 | this.currentIndex = index |
| 331 | - console.info('onChange==', index.toString()) | 331 | + // console.info('onChange==', index.toString()) |
| 332 | 332 | ||
| 333 | if (this.currentIndex === this.data.length - 1) { | 333 | if (this.currentIndex === this.data.length - 1) { |
| 334 | this.pageNum++ | 334 | this.pageNum++ |
| @@ -13,15 +13,20 @@ export struct PlayerBottomView { | @@ -13,15 +13,20 @@ export struct PlayerBottomView { | ||
| 13 | @Consume isDragging?: boolean | 13 | @Consume isDragging?: boolean |
| 14 | @Consume contentDetailData: ContentDetailDTO | 14 | @Consume contentDetailData: ContentDetailDTO |
| 15 | @Consume displayDirection: DisplayDirection | 15 | @Consume displayDirection: DisplayDirection |
| 16 | + @Prop index: number = 0 | ||
| 17 | + @Prop currentIndex: number = 0 | ||
| 16 | 18 | ||
| 17 | aboutToAppear(): void { | 19 | aboutToAppear(): void { |
| 18 | - | ||
| 19 | } | 20 | } |
| 20 | 21 | ||
| 21 | build() { | 22 | build() { |
| 22 | Column() { | 23 | Column() { |
| 23 | PlayerTitleView() | 24 | PlayerTitleView() |
| 24 | - PlayerProgressView({ playerController: this.playerController }) | 25 | + PlayerProgressView({ |
| 26 | + playerController: this.playerController, | ||
| 27 | + index: this.index, | ||
| 28 | + currentIndex: this.currentIndex, | ||
| 29 | + }) | ||
| 25 | } | 30 | } |
| 26 | .width('100%') | 31 | .width('100%') |
| 27 | .alignItems(HorizontalAlign.Start) | 32 | .alignItems(HorizontalAlign.Start) |
| @@ -16,14 +16,13 @@ export struct PlayerProgressView { | @@ -16,14 +16,13 @@ export struct PlayerProgressView { | ||
| 16 | @State loadingWidth: number | string = 1 | 16 | @State loadingWidth: number | string = 1 |
| 17 | @State showLoading: boolean = false | 17 | @State showLoading: boolean = false |
| 18 | @Consume onlyWifiLoadVideo: boolean | 18 | @Consume onlyWifiLoadVideo: boolean |
| 19 | + @Prop index: number = 0 | ||
| 20 | + @Prop @Watch('currentIndexChange') currentIndex: number = 0 | ||
| 19 | timer: number = 0 | 21 | timer: number = 0 |
| 20 | 22 | ||
| 21 | - aboutToAppear() { | ||
| 22 | - if (this.playerController) { | ||
| 23 | - this.playerController.onSeekDone = (status: number) => { | ||
| 24 | - this.playerController?.play() | ||
| 25 | - } | ||
| 26 | - | 23 | + currentIndexChange() { |
| 24 | + // console.log('DetailPlayShortVideoPage PlayerProgressView', 'currentIndex:', this.currentIndex,'index:', this.index) | ||
| 25 | + if (this.playerController && this.index == this.currentIndex) { | ||
| 27 | this.playerController.onLoaded = (loaded: number) => { | 26 | this.playerController.onLoaded = (loaded: number) => { |
| 28 | if (loaded == 1) { | 27 | if (loaded == 1) { |
| 29 | this.loadingWidth = '95%' | 28 | this.loadingWidth = '95%' |
| @@ -44,6 +43,14 @@ export struct PlayerProgressView { | @@ -44,6 +43,14 @@ export struct PlayerProgressView { | ||
| 44 | } | 43 | } |
| 45 | } | 44 | } |
| 46 | 45 | ||
| 46 | + aboutToAppear() { | ||
| 47 | + if (this.playerController) { | ||
| 48 | + this.playerController.onSeekDone = (status: number) => { | ||
| 49 | + this.playerController?.play() | ||
| 50 | + } | ||
| 51 | + } | ||
| 52 | + } | ||
| 53 | + | ||
| 47 | /** | 54 | /** |
| 48 | * | 55 | * |
| 49 | * loading 动效 | 56 | * loading 动效 |
| @@ -71,7 +78,7 @@ export struct PlayerProgressView { | @@ -71,7 +78,7 @@ export struct PlayerProgressView { | ||
| 71 | .zIndex(2000) | 78 | .zIndex(2000) |
| 72 | .height(10) | 79 | .height(10) |
| 73 | .visibility(this.showLoading ? Visibility.Visible : Visibility.Hidden) | 80 | .visibility(this.showLoading ? Visibility.Visible : Visibility.Hidden) |
| 74 | - .margin({ bottom: 10 }) | 81 | + .margin({ bottom: 14 }) |
| 75 | 82 | ||
| 76 | // .markAnchor({ x: 0, y: '100%' }) | 83 | // .markAnchor({ x: 0, y: '100%' }) |
| 77 | } | 84 | } |
| 1 | import measure from '@ohos.measure' | 1 | import measure from '@ohos.measure' |
| 2 | -import { ContentDetailDTO } from 'wdBean/Index' | 2 | +import { ContentDetailDTO, Params } from 'wdBean/Index' |
| 3 | import { DetailDialog } from './DetailDialog' | 3 | import { DetailDialog } from './DetailDialog' |
| 4 | -import { DateTimeUtils } from 'wdKit' | 4 | +import { DateTimeUtils, ToastUtils } from 'wdKit' |
| 5 | +import { WDRouterPage, WDRouterRule } from 'wdRouter' | ||
| 5 | 6 | ||
| 6 | const TAG = 'PlayerTitleView'; | 7 | const TAG = 'PlayerTitleView'; |
| 7 | 8 | ||
| @@ -174,7 +175,22 @@ export struct PlayerTitleView { | @@ -174,7 +175,22 @@ export struct PlayerTitleView { | ||
| 174 | if (this.getIcon()) { | 175 | if (this.getIcon()) { |
| 175 | Image(this.getIcon()).height(11).margin({ left: 4, top: 3 }) | 176 | Image(this.getIcon()).height(11).margin({ left: 4, top: 3 }) |
| 176 | } | 177 | } |
| 177 | - }.margin({ bottom: 8 }) | 178 | + } |
| 179 | + .zIndex(100) | ||
| 180 | + .margin({ bottom: 8 }) | ||
| 181 | + .onClick(() => { | ||
| 182 | + // console.log(TAG, '点击号主@信息') | ||
| 183 | + // 跳转到号主页 | ||
| 184 | + if (this.contentDetailData.rmhInfo?.cnMainControl === 1) { | ||
| 185 | + const params: Params = { | ||
| 186 | + creatorId: this.contentDetailData.rmhInfo.rmhId, | ||
| 187 | + pageID: '' | ||
| 188 | + } | ||
| 189 | + WDRouterRule.jumpWithPage(WDRouterPage.peopleShipHomePage, params) | ||
| 190 | + } else { | ||
| 191 | + ToastUtils.showToast("暂时无法查看该创作者主页", 2000); | ||
| 192 | + } | ||
| 193 | + }) | ||
| 178 | 194 | ||
| 179 | } | 195 | } |
| 180 | 196 |
| @@ -97,6 +97,14 @@ struct Index { | @@ -97,6 +97,14 @@ struct Index { | ||
| 97 | 97 | ||
| 98 | build() { | 98 | build() { |
| 99 | Stack({ alignContent: Alignment.End }) { | 99 | Stack({ alignContent: Alignment.End }) { |
| 100 | + Progress({ value: 0, total: 100, type: ProgressType.Linear }) | ||
| 101 | + .color("#ED2800") | ||
| 102 | + .backgroundColor($r('app.color.white')) | ||
| 103 | + .width("100%") | ||
| 104 | + .height(3) | ||
| 105 | + .margin({ top: 57 }) | ||
| 106 | + .value(this.progressVal) | ||
| 107 | + .visibility(this.isExpand ? Visibility.Visible : Visibility.Hidden) | ||
| 100 | Stack({ alignContent: Alignment.End }) { | 108 | Stack({ alignContent: Alignment.End }) { |
| 101 | Column() { //标题 时间 进度条 | 109 | Column() { //标题 时间 进度条 |
| 102 | Marquee({ | 110 | Marquee({ |
| @@ -139,13 +147,6 @@ struct Index { | @@ -139,13 +147,6 @@ struct Index { | ||
| 139 | .width("100%") | 147 | .width("100%") |
| 140 | .height(16) | 148 | .height(16) |
| 141 | .margin({ top: 4}) | 149 | .margin({ top: 4}) |
| 142 | - | ||
| 143 | - Progress({ value: this.progressVal, total: 100, type: ProgressType.Capsule }) | ||
| 144 | - .color("#ED2800") | ||
| 145 | - .backgroundColor($r('app.color.white')) | ||
| 146 | - .width("100%") | ||
| 147 | - .height(3) | ||
| 148 | - .margin({ top: 7 }) | ||
| 149 | } | 150 | } |
| 150 | .padding({ | 151 | .padding({ |
| 151 | top: 10, | 152 | top: 10, |
| @@ -241,12 +242,6 @@ struct Index { | @@ -241,12 +242,6 @@ struct Index { | ||
| 241 | ) | 242 | ) |
| 242 | ) | 243 | ) |
| 243 | .borderRadius(4) | 244 | .borderRadius(4) |
| 244 | - .padding({ | ||
| 245 | - top: 10, | ||
| 246 | - bottom: 10, | ||
| 247 | - left: 10, | ||
| 248 | - right: 0 | ||
| 249 | - }) | ||
| 250 | .backgroundColor(Color.White) | 245 | .backgroundColor(Color.White) |
| 251 | } | 246 | } |
| 252 | } | 247 | } |
No preview for this file type
-
Please register or login to post a comment