Merge branch 'main' of http://192.168.1.42/developOne/harmonyPool
Showing
9 changed files
with
108 additions
and
52 deletions
| @@ -8,6 +8,7 @@ import { ENewspaperCalendarDialog } from '../dialog/ENewspaperCalendarDialog'; | @@ -8,6 +8,7 @@ import { ENewspaperCalendarDialog } from '../dialog/ENewspaperCalendarDialog'; | ||
| 8 | import font from '@ohos.font'; | 8 | import font from '@ohos.font'; |
| 9 | import { ENewspaperPageDialog } from '../dialog/ENewspaperPageDialog'; | 9 | import { ENewspaperPageDialog } from '../dialog/ENewspaperPageDialog'; |
| 10 | import { RMCalendarBean } from './calendar/RMCalendarBean'; | 10 | import { RMCalendarBean } from './calendar/RMCalendarBean'; |
| 11 | +import { newsSkeleton } from './skeleton/newsSkeleton'; | ||
| 11 | 12 | ||
| 12 | @Component | 13 | @Component |
| 13 | export struct ENewspaperPageComponent { | 14 | export struct ENewspaperPageComponent { |
| @@ -63,13 +64,15 @@ export struct ENewspaperPageComponent { | @@ -63,13 +64,15 @@ export struct ENewspaperPageComponent { | ||
| 63 | customStyle: true, | 64 | customStyle: true, |
| 64 | }) | 65 | }) |
| 65 | //文字报纸弹框 | 66 | //文字报纸弹框 |
| 66 | - listDialogController: CustomDialogController = new CustomDialogController({ | ||
| 67 | - builder: ENewspaperListDialog({ | ||
| 68 | - newspaperListBean: this.newspaperListBean | ||
| 69 | - }), | ||
| 70 | - alignment: DialogAlignment.Bottom, | ||
| 71 | - offset: { dx: 0, dy: 0 } | ||
| 72 | - }) | 67 | + @State isOpenListDialog: boolean = false |
| 68 | + | ||
| 69 | + // listDialogController: CustomDialogController = new CustomDialogController({ | ||
| 70 | + // builder: ENewspaperListDialog({ | ||
| 71 | + // newspaperListBean: this.newspaperListBean | ||
| 72 | + // }), | ||
| 73 | + // alignment: DialogAlignment.Bottom, | ||
| 74 | + // offset: { dx: 0, dy: 0 } | ||
| 75 | + // }) | ||
| 73 | 76 | ||
| 74 | async aboutToAppear() { | 77 | async aboutToAppear() { |
| 75 | //获取宽高尺寸 | 78 | //获取宽高尺寸 |
| @@ -95,6 +98,7 @@ export struct ENewspaperPageComponent { | @@ -95,6 +98,7 @@ export struct ENewspaperPageComponent { | ||
| 95 | } | 98 | } |
| 96 | 99 | ||
| 97 | build() { | 100 | build() { |
| 101 | + Stack() { | ||
| 98 | RelativeContainer() { | 102 | RelativeContainer() { |
| 99 | RelativeContainer() { | 103 | RelativeContainer() { |
| 100 | Image($r('app.media.icon_arrow_down')) | 104 | Image($r('app.media.icon_arrow_down')) |
| @@ -154,6 +158,18 @@ export struct ENewspaperPageComponent { | @@ -154,6 +158,18 @@ export struct ENewspaperPageComponent { | ||
| 154 | }) | 158 | }) |
| 155 | .id('e_newspaper_top') | 159 | .id('e_newspaper_top') |
| 156 | 160 | ||
| 161 | + if (!this.newspaperListBean || !this.newspaperListBean.list || this.newspaperListBean.list.length == 0) { | ||
| 162 | + newsSkeleton() | ||
| 163 | + .alignRules({ | ||
| 164 | + top: { anchor: "e_newspaper_top", align: VerticalAlign.Bottom }, | ||
| 165 | + middle: { anchor: "__container__", align: HorizontalAlign.Center } | ||
| 166 | + }) | ||
| 167 | + .id('news_skeleton_id') | ||
| 168 | + .width('100%') | ||
| 169 | + .height(px2vp(this.picHeight) + 32) | ||
| 170 | + .margin({ top: 35, left: 10, right: 10 }) | ||
| 171 | + } | ||
| 172 | + | ||
| 157 | if (this.newspaperListBean && this.newspaperListBean.list && this.newspaperListBean.list.length > 0) { | 173 | if (this.newspaperListBean && this.newspaperListBean.list && this.newspaperListBean.list.length > 0) { |
| 158 | Swiper(this.swiperController) { | 174 | Swiper(this.swiperController) { |
| 159 | ForEach(this.newspaperListBean?.list, (item: NewspaperListItemBean, index: number) => { | 175 | ForEach(this.newspaperListBean?.list, (item: NewspaperListItemBean, index: number) => { |
| @@ -266,13 +282,23 @@ export struct ENewspaperPageComponent { | @@ -266,13 +282,23 @@ export struct ENewspaperPageComponent { | ||
| 266 | }) | 282 | }) |
| 267 | .id('e_newspaper_read') | 283 | .id('e_newspaper_read') |
| 268 | .onClick((event: ClickEvent) => { | 284 | .onClick((event: ClickEvent) => { |
| 269 | - this.listDialogController.open() | 285 | + this.isOpenListDialog = true |
| 270 | }) | 286 | }) |
| 271 | } | 287 | } |
| 272 | .width('100%') | 288 | .width('100%') |
| 273 | .height('100%') | 289 | .height('100%') |
| 274 | .backgroundColor($r('app.color.color_80000000')) | 290 | .backgroundColor($r('app.color.color_80000000')) |
| 275 | .id('e_newspaper_container') | 291 | .id('e_newspaper_container') |
| 292 | + | ||
| 293 | + ENewspaperListDialog({ | ||
| 294 | + newspaperListBean: this.newspaperListBean, | ||
| 295 | + closeDialog: () => { | ||
| 296 | + this.isOpenListDialog = false | ||
| 297 | + } | ||
| 298 | + }) | ||
| 299 | + .visibility(this.isOpenListDialog ? Visibility.Visible : Visibility.None) | ||
| 300 | + } | ||
| 301 | + | ||
| 276 | } | 302 | } |
| 277 | 303 | ||
| 278 | private async getNewspaperTime() { | 304 | private async getNewspaperTime() { |
| 1 | -import { Logger, NumberFormatterUtils } from 'wdKit'; | 1 | +import { Logger, NumberFormatterUtils, DateTimeUtils } from 'wdKit'; |
| 2 | import { | 2 | import { |
| 3 | Action, | 3 | Action, |
| 4 | ContentDetailDTO, | 4 | ContentDetailDTO, |
| @@ -14,15 +14,15 @@ import DetailViewModel from '../viewmodel/DetailViewModel'; | @@ -14,15 +14,15 @@ import DetailViewModel from '../viewmodel/DetailViewModel'; | ||
| 14 | import { ImageAndTextWebComponent } from './ImageAndTextWebComponent'; | 14 | import { ImageAndTextWebComponent } from './ImageAndTextWebComponent'; |
| 15 | import router from '@ohos.router'; | 15 | import router from '@ohos.router'; |
| 16 | import { RecommendList } from '../components/view/RecommendList' | 16 | import { RecommendList } from '../components/view/RecommendList' |
| 17 | -import { CommonConstants } from 'wdConstant' | 17 | +import { CommonConstants } from 'wdConstant'; |
| 18 | import { HttpUrlUtils } from 'wdNetwork/Index'; | 18 | import { HttpUrlUtils } from 'wdNetwork/Index'; |
| 19 | import { WDRouterPage, WDRouterRule } from 'wdRouter/Index'; | 19 | import { WDRouterPage, WDRouterRule } from 'wdRouter/Index'; |
| 20 | import { MultiPictureDetailViewModel } from '../viewmodel/MultiPictureDetailViewModel'; | 20 | import { MultiPictureDetailViewModel } from '../viewmodel/MultiPictureDetailViewModel'; |
| 21 | import { PageRepository } from '../repository/PageRepository'; | 21 | import { PageRepository } from '../repository/PageRepository'; |
| 22 | -import { detailedSkeleton } from './skeleton/detailSkeleton' | 22 | +import { detailedSkeleton } from './skeleton/detailSkeleton'; |
| 23 | +const PATTERN_DATE_CN_RN: string = 'yyyy年MM月dd日 HH:mm'; | ||
| 23 | 24 | ||
| 24 | const TAG = 'ImageAndTextPageComponent' | 25 | const TAG = 'ImageAndTextPageComponent' |
| 25 | - | ||
| 26 | @Component | 26 | @Component |
| 27 | export struct ImageAndTextPageComponent { | 27 | export struct ImageAndTextPageComponent { |
| 28 | scroller: Scroller = new Scroller(); | 28 | scroller: Scroller = new Scroller(); |
| @@ -32,7 +32,7 @@ export struct ImageAndTextPageComponent { | @@ -32,7 +32,7 @@ export struct ImageAndTextPageComponent { | ||
| 32 | @State newsStatusOfUser: batchLikeAndCollectResult | undefined = undefined // 点赞、收藏状态 | 32 | @State newsStatusOfUser: batchLikeAndCollectResult | undefined = undefined // 点赞、收藏状态 |
| 33 | @State interactData: InteractDataDTO = {} as InteractDataDTO | 33 | @State interactData: InteractDataDTO = {} as InteractDataDTO |
| 34 | @State isPageEnd: boolean = false | 34 | @State isPageEnd: boolean = false |
| 35 | - | 35 | + @State publishTime: string = '' |
| 36 | build() { | 36 | build() { |
| 37 | Column() { | 37 | Column() { |
| 38 | if (!this.isPageEnd) { | 38 | if (!this.isPageEnd) { |
| @@ -40,10 +40,10 @@ export struct ImageAndTextPageComponent { | @@ -40,10 +40,10 @@ export struct ImageAndTextPageComponent { | ||
| 40 | } else { | 40 | } else { |
| 41 | // 发布时间 | 41 | // 发布时间 |
| 42 | Row() { | 42 | Row() { |
| 43 | - Image($r('app.media.icon_ren_min_ri_bao')) | ||
| 44 | - .width(70) | 43 | + Image(this.contentDetailData[0]?.rmhInfo ? $r('app.media.logo_rmh') : $r('app.media.logo_rmrb')) |
| 44 | + .width(80) | ||
| 45 | .height(28) | 45 | .height(28) |
| 46 | - Text(this.contentDetailData[0]?.publishTime) | 46 | + Text(this.publishTime) |
| 47 | .fontColor($r('app.color.color_B0B0B0')) | 47 | .fontColor($r('app.color.color_B0B0B0')) |
| 48 | .fontSize($r('app.float.font_size_13')) | 48 | .fontSize($r('app.float.font_size_13')) |
| 49 | .height('100%') | 49 | .height('100%') |
| @@ -151,6 +151,8 @@ export struct ImageAndTextPageComponent { | @@ -151,6 +151,8 @@ export struct ImageAndTextPageComponent { | ||
| 151 | let detailBeans = await DetailViewModel.getDetailPageData(relId, contentId, relType) | 151 | let detailBeans = await DetailViewModel.getDetailPageData(relId, contentId, relType) |
| 152 | if (detailBeans && detailBeans.length > 0) { | 152 | if (detailBeans && detailBeans.length > 0) { |
| 153 | this.contentDetailData = detailBeans; | 153 | this.contentDetailData = detailBeans; |
| 154 | + let dateTime = DateTimeUtils.parseDate(this.contentDetailData[0]?.publishTime, DateTimeUtils.PATTERN_DATE_TIME_HYPHEN); | ||
| 155 | + this.publishTime = DateTimeUtils.formatDate(dateTime,PATTERN_DATE_CN_RN) | ||
| 154 | if (this.contentDetailData[0]?.recommendShow === 1) { | 156 | if (this.contentDetailData[0]?.recommendShow === 1) { |
| 155 | this.getRecommend() | 157 | this.getRecommend() |
| 156 | } | 158 | } |
| @@ -7,10 +7,14 @@ import { photoAccessHelper } from '@kit.MediaLibraryKit'; | @@ -7,10 +7,14 @@ import { photoAccessHelper } from '@kit.MediaLibraryKit'; | ||
| 7 | import fs from '@ohos.file.fs'; | 7 | import fs from '@ohos.file.fs'; |
| 8 | 8 | ||
| 9 | const PERMISSIONS: Array<Permissions> = [ | 9 | const PERMISSIONS: Array<Permissions> = [ |
| 10 | - 'ohos.permission.READ_MEDIA', | ||
| 11 | - 'ohos.permission.WRITE_MEDIA' | 10 | + 'ohos.permission.READ_IMAGEVIDEO', |
| 11 | + 'ohos.permission.WRITE_IMAGEVIDEO' | ||
| 12 | ]; | 12 | ]; |
| 13 | 13 | ||
| 14 | +/* | ||
| 15 | + * saveButton参考文档 | ||
| 16 | + * https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/savebutton-0000001820999677 | ||
| 17 | + * */ | ||
| 14 | @Component | 18 | @Component |
| 15 | export struct ImageDownloadComponent { | 19 | export struct ImageDownloadComponent { |
| 16 | @State image: PixelMap | undefined = undefined; | 20 | @State image: PixelMap | undefined = undefined; |
| @@ -20,12 +24,8 @@ export struct ImageDownloadComponent { | @@ -20,12 +24,8 @@ export struct ImageDownloadComponent { | ||
| 20 | 24 | ||
| 21 | build() { | 25 | build() { |
| 22 | Column() { | 26 | Column() { |
| 23 | - Image($r('app.media.icon_arrow_left_white')) | ||
| 24 | - .width(24) | ||
| 25 | - .height(24) | ||
| 26 | - .aspectRatio(1) | ||
| 27 | - .interpolation(ImageInterpolation.High) | ||
| 28 | - .rotate({ angle: -90 }) | 27 | + SaveButton({ icon: SaveIconStyle.LINES }) |
| 28 | + .iconColor(Color.White) | ||
| 29 | .onClick(async () => { | 29 | .onClick(async () => { |
| 30 | console.info(`cj2024 onClick ${this.imageBuffer}`) | 30 | console.info(`cj2024 onClick ${this.imageBuffer}`) |
| 31 | if (this.imageBuffer !== undefined) { | 31 | if (this.imageBuffer !== undefined) { |
| @@ -287,16 +287,6 @@ struct ChannelDialog { | @@ -287,16 +287,6 @@ struct ChannelDialog { | ||
| 287 | .height('100%') | 287 | .height('100%') |
| 288 | .justifyContent(FlexAlign.Center) | 288 | .justifyContent(FlexAlign.Center) |
| 289 | .backgroundColor(item.homeChannel === '1' || item.movePermitted === 0 ? '#F5F5F5' : '#ffffff') | 289 | .backgroundColor(item.homeChannel === '1' || item.movePermitted === 0 ? '#F5F5F5' : '#ffffff') |
| 290 | - .onClick(() => { | ||
| 291 | - if (this.isEditIng) { | ||
| 292 | - if (item.delPermitted === 1) { | ||
| 293 | - this.delChannelItem(index) | ||
| 294 | - } | ||
| 295 | - } else { | ||
| 296 | - this.confirm(index) | ||
| 297 | - this.controller?.close() | ||
| 298 | - } | ||
| 299 | - }) | ||
| 300 | } | 290 | } |
| 301 | .width('23%') | 291 | .width('23%') |
| 302 | .height(40) | 292 | .height(40) |
| @@ -307,9 +297,19 @@ struct ChannelDialog { | @@ -307,9 +297,19 @@ struct ChannelDialog { | ||
| 307 | }) | 297 | }) |
| 308 | .zIndex(this.dragItem == item.num ? 1 : 0) | 298 | .zIndex(this.dragItem == item.num ? 1 : 0) |
| 309 | .translate(this.dragItem == item.num ? { x: this.offsetX, y: this.offsetY } : { x: 0, y: 0 }) | 299 | .translate(this.dragItem == item.num ? { x: this.offsetX, y: this.offsetY } : { x: 0, y: 0 }) |
| 310 | - | ||
| 311 | .gesture( | 300 | .gesture( |
| 312 | GestureGroup(GestureMode.Sequence, | 301 | GestureGroup(GestureMode.Sequence, |
| 302 | + TapGesture() | ||
| 303 | + .onAction((event?: GestureEvent) => { | ||
| 304 | + if (this.isEditIng) { | ||
| 305 | + if (item.delPermitted === 1) { | ||
| 306 | + this.delChannelItem(index) | ||
| 307 | + } | ||
| 308 | + } else { | ||
| 309 | + this.confirm(index) | ||
| 310 | + this.controller?.close() | ||
| 311 | + } | ||
| 312 | + }), | ||
| 313 | PanGesture({ fingers: 1, direction: null, distance: 0 }) | 313 | PanGesture({ fingers: 1, direction: null, distance: 0 }) |
| 314 | .onActionStart((event: GestureEvent) => { | 314 | .onActionStart((event: GestureEvent) => { |
| 315 | this.dragItem = item.num | 315 | this.dragItem = item.num |
| @@ -330,8 +330,7 @@ struct ChannelDialog { | @@ -330,8 +330,7 @@ struct ChannelDialog { | ||
| 330 | this.dragRefOffsetY = 0 | 330 | this.dragRefOffsetY = 0 |
| 331 | }) | 331 | }) |
| 332 | }) | 332 | }) |
| 333 | - ) | ||
| 334 | - .onCancel(() => { | 333 | + ).onCancel(() => { |
| 335 | animateTo({ curve: curves.interpolatingSpring(0, 1, 400, 38) }, () => { | 334 | animateTo({ curve: curves.interpolatingSpring(0, 1, 400, 38) }, () => { |
| 336 | this.dragItem = -1 | 335 | this.dragItem = -1 |
| 337 | this.offsetX = 0 | 336 | this.offsetX = 0 |
| @@ -339,8 +338,8 @@ struct ChannelDialog { | @@ -339,8 +338,8 @@ struct ChannelDialog { | ||
| 339 | this.dragRefOffsetX = 0 | 338 | this.dragRefOffsetX = 0 |
| 340 | this.dragRefOffsetY = 0 | 339 | this.dragRefOffsetY = 0 |
| 341 | }) | 340 | }) |
| 342 | - })) | ||
| 343 | - | 341 | + }) |
| 342 | + ) | ||
| 344 | }, (item: TopNavDTO) => JSON.stringify(item)) | 343 | }, (item: TopNavDTO) => JSON.stringify(item)) |
| 345 | } | 344 | } |
| 346 | .width('100%') | 345 | .width('100%') |
| @@ -66,6 +66,7 @@ struct MyCollectionListPage { | @@ -66,6 +66,7 @@ struct MyCollectionListPage { | ||
| 66 | } | 66 | } |
| 67 | 67 | ||
| 68 | if (this.isEditState){ | 68 | if (this.isEditState){ |
| 69 | + Stack(){ | ||
| 69 | CustomBottomFuctionUI({ | 70 | CustomBottomFuctionUI({ |
| 70 | selectAllCallback:(isAllSelect)=>{ | 71 | selectAllCallback:(isAllSelect)=>{ |
| 71 | this.allSelectDatas(isAllSelect) | 72 | this.allSelectDatas(isAllSelect) |
| @@ -74,7 +75,7 @@ struct MyCollectionListPage { | @@ -74,7 +75,7 @@ struct MyCollectionListPage { | ||
| 74 | this.deleteDatas() | 75 | this.deleteDatas() |
| 75 | } | 76 | } |
| 76 | }) | 77 | }) |
| 77 | - .position({y:'92%'}) | 78 | + }.position({y:'92%'}) |
| 78 | } | 79 | } |
| 79 | } | 80 | } |
| 80 | .width(CommonConstants.FULL_WIDTH) | 81 | .width(CommonConstants.FULL_WIDTH) |
| @@ -119,16 +120,22 @@ struct MyCollectionListPage { | @@ -119,16 +120,22 @@ struct MyCollectionListPage { | ||
| 119 | MyCollectionViewModel.fetchMyCollectList(1,'1',this.currentPage,getContext(this)).then(collectionItem => { | 120 | MyCollectionViewModel.fetchMyCollectList(1,'1',this.currentPage,getContext(this)).then(collectionItem => { |
| 120 | if(resolve) resolve('刷新成功') | 121 | if(resolve) resolve('刷新成功') |
| 121 | if (collectionItem && collectionItem.list && collectionItem.list.length > 0) { | 122 | if (collectionItem && collectionItem.list && collectionItem.list.length > 0) { |
| 122 | - if (this.currentPage === 1) this.allDatas = [] | 123 | + if (this.currentPage === 1) { |
| 124 | + this.allDatas = [] | ||
| 125 | + this.allDatas.push(...collectionItem.list) | ||
| 126 | + }else { | ||
| 123 | this.allDatas = this.allDatas.concat(...collectionItem.list) | 127 | this.allDatas = this.allDatas.concat(...collectionItem.list) |
| 124 | - if (collectionItem.totalCount === this.allDatas.length) { | 128 | + } |
| 129 | + if (collectionItem.hasNext === 0) { | ||
| 125 | this.browSingModel.hasMore = false; | 130 | this.browSingModel.hasMore = false; |
| 126 | } else { | 131 | } else { |
| 127 | this.browSingModel.hasMore = true; | 132 | this.browSingModel.hasMore = true; |
| 128 | } | 133 | } |
| 129 | } else { | 134 | } else { |
| 135 | + if (this.currentPage === 1) { | ||
| 130 | this.browSingModel.viewType = ViewType.EMPTY; | 136 | this.browSingModel.viewType = ViewType.EMPTY; |
| 131 | } | 137 | } |
| 138 | + } | ||
| 132 | }) | 139 | }) |
| 133 | } | 140 | } |
| 134 | 141 |
| 1 | import { CommonConstants } from 'wdConstant' | 1 | import { CommonConstants } from 'wdConstant' |
| 2 | -import { ContentDTO,CompDTO } from 'wdBean' | 2 | +import { ContentDTO, CompDTO } from 'wdBean' |
| 3 | +import { ProcessUtils } from '../../utils/ProcessUtils'; | ||
| 3 | 4 | ||
| 4 | @Component | 5 | @Component |
| 5 | export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent { | 6 | export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent { |
| @@ -59,13 +60,12 @@ export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent { | @@ -59,13 +60,12 @@ export struct HorizontalStrokeCardThreeTwoRadioForMoreComponent { | ||
| 59 | .padding({ left: (index == 0) ? 16 : 0, right: (index == this.compDTO.operDataList.length - 1) ? 16 : 0 }) | 60 | .padding({ left: (index == 0) ? 16 : 0, right: (index == this.compDTO.operDataList.length - 1) ? 16 : 0 }) |
| 60 | // .offset({x:16}) | 61 | // .offset({x:16}) |
| 61 | .onClick(() => { | 62 | .onClick(() => { |
| 62 | - if (item.objectType != '0') { | ||
| 63 | - console.log(item.objectId) | ||
| 64 | - } | 63 | + ProcessUtils.processPage(item) |
| 65 | }) | 64 | }) |
| 66 | }) | 65 | }) |
| 67 | 66 | ||
| 68 | }.listDirection(Axis.Horizontal) | 67 | }.listDirection(Axis.Horizontal) |
| 68 | + .scrollBar(BarState.Off) | ||
| 69 | .width('100%') | 69 | .width('100%') |
| 70 | 70 | ||
| 71 | // .backgroundColor($r("app.color.color_FE4B05")) | 71 | // .backgroundColor($r("app.color.color_FE4B05")) |
| @@ -12,7 +12,7 @@ export struct ENewspaperListDialog { | @@ -12,7 +12,7 @@ export struct ENewspaperListDialog { | ||
| 12 | @Consume @Watch('onCurrentPageNumUpdated') currentPageNum: string | 12 | @Consume @Watch('onCurrentPageNumUpdated') currentPageNum: string |
| 13 | @State pageDialogShow: boolean = false | 13 | @State pageDialogShow: boolean = false |
| 14 | @State scrollIndex: number = 0 | 14 | @State scrollIndex: number = 0 |
| 15 | - newspaperListBean: NewspaperListBean = {} as NewspaperListBean | 15 | + @Prop newspaperListBean: NewspaperListBean = {} as NewspaperListBean |
| 16 | private listScroller: Scroller = new Scroller(); | 16 | private listScroller: Scroller = new Scroller(); |
| 17 | //文字版选择弹框 | 17 | //文字版选择弹框 |
| 18 | pageListDialogController: CustomDialogController = new CustomDialogController({ | 18 | pageListDialogController: CustomDialogController = new CustomDialogController({ |
| @@ -21,13 +21,14 @@ export struct ENewspaperListDialog { | @@ -21,13 +21,14 @@ export struct ENewspaperListDialog { | ||
| 21 | newspaperListBean: this.newspaperListBean, | 21 | newspaperListBean: this.newspaperListBean, |
| 22 | }), | 22 | }), |
| 23 | alignment: DialogAlignment.TopStart, | 23 | alignment: DialogAlignment.TopStart, |
| 24 | - offset: { dx: 0, dy: 214 }, | 24 | + offset: { dx: 0, dy: 224 }, |
| 25 | customStyle: true, | 25 | customStyle: true, |
| 26 | }) | 26 | }) |
| 27 | //页面半屏弹窗(实现在上个组件)若尝试在CustomDialog中传入多个其他的Controller, | 27 | //页面半屏弹窗(实现在上个组件)若尝试在CustomDialog中传入多个其他的Controller, |
| 28 | // 以实现在CustomDialog中打开另一个或另一些CustomDialog, | 28 | // 以实现在CustomDialog中打开另一个或另一些CustomDialog, |
| 29 | // 那么此处需要将指向自己的controller放在所有controller的后面 | 29 | // 那么此处需要将指向自己的controller放在所有controller的后面 |
| 30 | - listDialogController: CustomDialogController | 30 | + // listDialogController: CustomDialogController |
| 31 | + public closeDialog?: () => void | ||
| 31 | 32 | ||
| 32 | //watch监听报纸页码回调 | 33 | //watch监听报纸页码回调 |
| 33 | onCurrentPageNumUpdated(): void { | 34 | onCurrentPageNumUpdated(): void { |
| @@ -53,6 +54,7 @@ export struct ENewspaperListDialog { | @@ -53,6 +54,7 @@ export struct ENewspaperListDialog { | ||
| 53 | } | 54 | } |
| 54 | 55 | ||
| 55 | build() { | 56 | build() { |
| 57 | + Stack() { | ||
| 56 | Column() { | 58 | Column() { |
| 57 | Row() | 59 | Row() |
| 58 | .width(43) | 60 | .width(43) |
| @@ -62,6 +64,11 @@ export struct ENewspaperListDialog { | @@ -62,6 +64,11 @@ export struct ENewspaperListDialog { | ||
| 62 | top: 10, | 64 | top: 10, |
| 63 | bottom: 10 | 65 | bottom: 10 |
| 64 | }) | 66 | }) |
| 67 | + .onClick(() => { | ||
| 68 | + if (this.closeDialog) { | ||
| 69 | + this.closeDialog() | ||
| 70 | + } | ||
| 71 | + }) | ||
| 65 | Row() { | 72 | Row() { |
| 66 | Text(this.currentPageNum) | 73 | Text(this.currentPageNum) |
| 67 | .fontSize($r('app.float.font_size_36')) | 74 | .fontSize($r('app.float.font_size_36')) |
| @@ -142,6 +149,7 @@ export struct ENewspaperListDialog { | @@ -142,6 +149,7 @@ export struct ENewspaperListDialog { | ||
| 142 | .fontColor($r('app.color.color_999999')) | 149 | .fontColor($r('app.color.color_999999')) |
| 143 | .margin({ top: 15, bottom: 15 }) | 150 | .margin({ top: 15, bottom: 15 }) |
| 144 | .maxLines(5) | 151 | .maxLines(5) |
| 152 | + .textOverflow({ overflow: TextOverflow.Ellipsis }) | ||
| 145 | } | 153 | } |
| 146 | } | 154 | } |
| 147 | .alignItems(HorizontalAlign.Start) | 155 | .alignItems(HorizontalAlign.Start) |
| @@ -159,9 +167,9 @@ export struct ENewspaperListDialog { | @@ -159,9 +167,9 @@ export struct ENewspaperListDialog { | ||
| 159 | } as Params, | 167 | } as Params, |
| 160 | }; | 168 | }; |
| 161 | WDRouterRule.jumpWithAction(taskAction) | 169 | WDRouterRule.jumpWithAction(taskAction) |
| 162 | - if (this.listDialogController) { | ||
| 163 | - this.listDialogController.close() | ||
| 164 | - } | 170 | + // if (this.listDialogController) { |
| 171 | + // this.listDialogController.close() | ||
| 172 | + // } | ||
| 165 | }) | 173 | }) |
| 166 | } | 174 | } |
| 167 | 175 | ||
| @@ -172,6 +180,9 @@ export struct ENewspaperListDialog { | @@ -172,6 +180,9 @@ export struct ENewspaperListDialog { | ||
| 172 | } | 180 | } |
| 173 | .width('100%') | 181 | .width('100%') |
| 174 | .padding({ left: 15, right: 15 }) | 182 | .padding({ left: 15, right: 15 }) |
| 183 | + .margin({ | ||
| 184 | + bottom: 85 | ||
| 185 | + }) | ||
| 175 | .scrollBar(BarState.Off) | 186 | .scrollBar(BarState.Off) |
| 176 | .divider({ | 187 | .divider({ |
| 177 | strokeWidth: 0.5, | 188 | strokeWidth: 0.5, |
| @@ -191,9 +202,20 @@ export struct ENewspaperListDialog { | @@ -191,9 +202,20 @@ export struct ENewspaperListDialog { | ||
| 191 | console.info(`onScroll scrollState = ScrollState` + scrollState + `, scrollOffset = ` + scrollOffset) | 202 | console.info(`onScroll scrollState = ScrollState` + scrollState + `, scrollOffset = ` + scrollOffset) |
| 192 | }) | 203 | }) |
| 193 | } | 204 | } |
| 205 | + .margin({ top: 124 }) | ||
| 194 | .width('100%') | 206 | .width('100%') |
| 195 | .backgroundColor(Color.White) | 207 | .backgroundColor(Color.White) |
| 208 | + .onClick(() => { | ||
| 196 | 209 | ||
| 210 | + }) | ||
| 211 | + }.width('100%') | ||
| 212 | + .height('100%') | ||
| 213 | + .backgroundColor('#80000000') | ||
| 214 | + .onClick(() => { | ||
| 215 | + if (this.closeDialog) { | ||
| 216 | + this.closeDialog() | ||
| 217 | + } | ||
| 218 | + }) | ||
| 197 | } | 219 | } |
| 198 | 220 | ||
| 199 | updateCurrentPageNum(firstIndex: number): void { | 221 | updateCurrentPageNum(firstIndex: number): void { |
-
Please register or login to post a comment