From 85a665b07bdb856f3c2d48563d2478c470853ecc Mon Sep 17 00:00:00 2001 From: sunlian Date: Fri, 22 Dec 2023 09:50:55 +0800 Subject: [PATCH] add follow tab Signed-off-by: sunlian --- OAT.xml | 12 +++ .../entry/src/main/ets/pages/MainPage.ets | 6 +- .../entry/src/main/ets/view/BookFirstItem.ets | 2 +- .../src/main/ets/view/BookSecondItem.ets | 2 +- .../entry/src/main/ets/view/BookTriItem.ets | 3 +- .../entry/src/main/ets/view/Community.ets | 91 +++++++++++++++++++ .../src/main/ets/view/CommunityHeadRight.ets | 36 ++++++++ .../entry/src/main/ets/view/CommunityRoom.ets | 41 +++++++++ .../src/main/ets/view/CommunitySquare.ets | 41 +++++++++ .../src/main/ets/view/CommunityVideo.ets | 41 +++++++++ .../entry/src/main/ets/view/FindHead.ets | 2 +- .../entry/src/main/ets/view/Follow.ets | 4 +- .../entry/src/main/ets/view/FollowHead.ets | 4 +- .../MyMusic/entry/src/main/ets/view/Home.ets | 10 +- .../entry/src/main/ets/view/ListHead.ets | 2 +- .../entry/src/main/ets/view/MidItem.ets | 2 +- .../MyMusic/entry/src/main/ets/view/Mine.ets | 7 +- .../entry/src/main/ets/view/MineActivity.ets | 2 +- .../src/main/ets/view/MineActivityItem.ets | 79 +++++++++++----- .../entry/src/main/ets/view/MineHead.ets | 2 +- .../entry/src/main/ets/view/MineInfo.ets | 2 +- .../entry/src/main/ets/view/MineListItem.ets | 3 +- .../entry/src/main/ets/view/MineMusic.ets | 2 +- .../entry/src/main/ets/view/MinePodCast.ets | 6 +- .../entry/src/main/ets/view/MineUserItem.ets | 2 +- .../entry/src/main/ets/view/PlayerBar.ets | 2 +- .../entry/src/main/ets/view/PodCast.ets | 4 +- .../src/main/ets/view/PodCastBigItem.ets | 2 +- .../src/main/ets/view/PodCastContentFirst.ets | 9 +- .../main/ets/view/PodCastContentFourth.ets | 8 +- .../main/ets/view/PodCastContentSecond.ets | 11 +-- .../src/main/ets/view/PodCastContentThird.ets | 6 +- .../entry/src/main/ets/view/PodCastHead.ets | 2 +- .../src/main/ets/view/PodCastHeadRight.ets | 2 +- .../src/main/ets/view/PodCastListenItem.ets | 3 +- .../entry/src/main/ets/view/RadioItem.ets | 3 +- .../src/main/ets/view/SelectFirstItem.ets | 2 +- .../entry/src/main/ets/view/SmallItem.ets | 2 +- .../entry/src/main/ets/view/TriItem.ets | 3 +- .../src/main/ets/viewmodel/MainViewModel.ets | 22 +++-- .../ets/viewmodel/MineActivityItemData.ets | 6 +- 41 files changed, 390 insertions(+), 101 deletions(-) create mode 100644 scenario/arkui/MyMusic/entry/src/main/ets/view/Community.ets create mode 100644 scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityHeadRight.ets create mode 100644 scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityRoom.ets create mode 100644 scenario/arkui/MyMusic/entry/src/main/ets/view/CommunitySquare.ets create mode 100644 scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityVideo.ets diff --git a/OAT.xml b/OAT.xml index bc6fdd488..b5dd261f8 100644 --- a/OAT.xml +++ b/OAT.xml @@ -58,6 +58,18 @@ Note:If the text contains special characters, please escape them according to th + + + diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/pages/MainPage.ets b/scenario/arkui/MyMusic/entry/src/main/ets/pages/MainPage.ets index ce4144102..1d957ebc3 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/pages/MainPage.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/pages/MainPage.ets @@ -17,8 +17,8 @@ import CommonConstants from '../common/constants/CommonConstants'; import Home from "../view/Home" import PodCast from "../view/PodCast" import Mine from '../view/Mine' -import { PlayerBar } from '../view/PlayerBar'; -import Setting from "../view/Setting" +import PlayerBar from '../view/PlayerBar'; +import Community from "../view/Community" import Follow from '../view/Follow'; /** @@ -87,7 +87,7 @@ struct MainPage { $r('app.media.ic_public_highlight_select'), $r('app.media.ic_public_highlight'))) TabContent() { - Setting() + Community() } .tabBar(this.TabBuilder(CommonConstants.SOCIAL_TITLE, CommonConstants.SOCIAL_TAB_INDEX, $r('app.media.ic_public_community_messages_select'), $r('app.media.ic_public_community_messages'))) diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/BookFirstItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/BookFirstItem.ets index cc0efe91e..17b582257 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/BookFirstItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/BookFirstItem.ets @@ -19,7 +19,7 @@ import prompt from '@ohos.promptAction'; * List item information component. */ @Component -export struct BookFirstItem { +export default struct BookFirstItem { private item: ItemData = new ItemData('', $r('app.media.fig1'), '', $r('app.media.fig1')); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/BookSecondItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/BookSecondItem.ets index 715ccb213..bc6d20064 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/BookSecondItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/BookSecondItem.ets @@ -19,7 +19,7 @@ import prompt from '@ohos.promptAction'; * List item information component. */ @Component -export struct BookSecondItem { +export default struct BookSecondItem { private item: ItemData = new ItemData('', $r('app.media.fig1'), '', $r('app.media.fig1')); private imgWidth: string = ''; @Consume playingTitle: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/BookTriItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/BookTriItem.ets index fc1223f6d..45bd458a4 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/BookTriItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/BookTriItem.ets @@ -13,14 +13,13 @@ * limitations under the License. */ import ItemData from '../viewmodel/BookTriItemData'; -import hilog from '@ohos.hilog'; import prompt from '@ohos.promptAction'; /** * List item information component. */ @Component -export struct BookTriItem { +export default struct BookTriItem { private items: ItemData[] = new Array(); ; @Consume playingTitle: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/Community.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/Community.ets new file mode 100644 index 000000000..4f3002cc9 --- /dev/null +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/Community.ets @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2023 Shenzhen Kaihong Digital Industry Development Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import CommonConstants from '../common/constants/CommonConstants'; +import PodCastHead from './PodCastHead'; +import CommunitySquare from './CommunitySquare'; +import CommunityVideo from './CommunityVideo'; +import CommunityRoom from './CommunityRoom'; +import CommunityHeadRight from './CommunityHeadRight'; + +/** + * Home tab content + */ +@Component +export default struct Community { + @State subCurrentIndex: number = CommonConstants.HOME_TAB_INDEX; + private tabsController: TabsController = new TabsController(); + + @Builder + TabBuilder(title: string, index: number, selectedImg: Resource, normalImg: Resource) { + Column() { + Text(title) + .fontSize($r('app.float.normal_text_size')) + .fontColor(this.subCurrentIndex === index ? $r('app.color.mainPage_selected') : $r('app.color.mainPage_normal')) + Image(this.subCurrentIndex === index ? selectedImg : normalImg) + .width($r('app.float.mainPage_baseTab_size')) + } + .height($r('app.float.mainPage_barHeight')) + .margin({ + top: $r('app.float.mainPage_padding'), + left: $r('app.float.mainPage_padding'), + right: $r('app.float.mainPage_padding') + }) + .onClick(() => { + this.subCurrentIndex = index; + this.tabsController.changeIndex(this.subCurrentIndex); + }) + } + + build() { + Stack({ alignContent: Alignment.Top }) { + Tabs({ + barPosition: BarPosition.End, + controller: this.tabsController + }) { + TabContent() { + CommunitySquare(); + } + .tabBar(this.TabBuilder('广场', 0, + $r('app.media.ic_screenshot_line_select'), $r('app.media.ic_screenshot_line'))) + + TabContent() { + CommunityVideo(); + } + .tabBar(this.TabBuilder('视频', 1, + $r('app.media.ic_screenshot_line_select'), $r('app.media.ic_screenshot_line'))) + + TabContent() { + CommunityRoom(); + } + .tabBar(this.TabBuilder('歌房', 2, + $r('app.media.ic_screenshot_line_select'), $r('app.media.ic_screenshot_line'))) + } + .width(CommonConstants.FULL_PARENT) + .barHeight($r('app.float.mainPage_barHeight')) + .barWidth('70%') + .barMode(BarMode.Scrollable) + .barPosition(BarPosition.Start) + .onChange((index: number) => { + this.subCurrentIndex = index; + }) + + PodCastHead().width('10%').position({x:'5%',y:0}) + CommunityHeadRight().width('10%').position({x:'90%',y:0}) + } + .backgroundColor('#F9F9F9') + .width('100%').height('100%') + } +} diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityHeadRight.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityHeadRight.ets new file mode 100644 index 000000000..9951ebd5b --- /dev/null +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityHeadRight.ets @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2023 Shenzhen Kaihong Digital Industry Development Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * List item information component. + */ +@Component +export default struct CommunityHeadRight { + @State handlePopup: boolean = false + + build() { + Image($r('app.media.ic_public_add_norm_filled')) + .objectFit(ImageFit.Contain) + .width('24vp') + .height('24vp') + .onClick(() => { + this.handlePopup = !this.handlePopup + }) + .bindPopup(this.handlePopup, { + message: '声音创作.', + }) + .margin({ top: $r('app.float.mainPage_baseTab_margin')}) + } +} \ No newline at end of file diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityRoom.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityRoom.ets new file mode 100644 index 000000000..b85868820 --- /dev/null +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityRoom.ets @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2023 Shenzhen Kaihong Digital Industry Development Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import MineActivityItem from './MineActivityItem'; +import MineActivityItemData from '../viewmodel/MineActivityItemData'; +import mainViewModel from '../viewmodel/MainViewModel'; + + +/** + * Home tab content + */ +@Component +export default struct CommunityRoom { + build() { + List({ space: 10 }) { + ForEach(mainViewModel.getMineActivityItemData(), (item: MineActivityItemData) => { + ListItem() { + MineActivityItem({ item }) + } + .align(Alignment.Start) + }, (item: MineActivityItemData) => JSON.stringify(item)) + }.margin('12vp') + .edgeEffect(EdgeEffect.Spring) + .nestedScroll({ + scrollForward: NestedScrollMode.PARENT_FIRST, + scrollBackward: NestedScrollMode.SELF_FIRST + }) + } +} diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunitySquare.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunitySquare.ets new file mode 100644 index 000000000..0bbc43795 --- /dev/null +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunitySquare.ets @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2023 Shenzhen Kaihong Digital Industry Development Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import MineActivityItem from './MineActivityItem'; +import MineActivityItemData from '../viewmodel/MineActivityItemData'; +import mainViewModel from '../viewmodel/MainViewModel'; + + +/** + * Home tab content + */ +@Component +export default struct CommunitySquare { + build() { + List({ space: 10 }) { + ForEach(mainViewModel.getMineActivityItemData(), (item: MineActivityItemData) => { + ListItem() { + MineActivityItem({ item }) + } + .align(Alignment.Start) + }, (item: MineActivityItemData) => JSON.stringify(item)) + }.margin('12vp') + .edgeEffect(EdgeEffect.Spring) + .nestedScroll({ + scrollForward: NestedScrollMode.PARENT_FIRST, + scrollBackward: NestedScrollMode.SELF_FIRST + }) + } +} diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityVideo.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityVideo.ets new file mode 100644 index 000000000..8ddfcc735 --- /dev/null +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/CommunityVideo.ets @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2023 Shenzhen Kaihong Digital Industry Development Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import MineActivityItem from './MineActivityItem'; +import MineActivityItemData from '../viewmodel/MineActivityItemData'; +import mainViewModel from '../viewmodel/MainViewModel'; + + +/** + * Home tab content + */ +@Component +export default struct CommunityVideo { + build() { + List({ space: 10 }) { + ForEach(mainViewModel.getMineActivityItemData(), (item: MineActivityItemData) => { + ListItem() { + MineActivityItem({ item }) + } + .align(Alignment.Start) + }, (item: MineActivityItemData) => JSON.stringify(item)) + }.margin('12vp') + .edgeEffect(EdgeEffect.Spring) + .nestedScroll({ + scrollForward: NestedScrollMode.PARENT_FIRST, + scrollBackward: NestedScrollMode.SELF_FIRST + }) + } +} diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/FindHead.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/FindHead.ets index 41ef6a495..7113b5787 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/FindHead.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/FindHead.ets @@ -18,7 +18,7 @@ * List item information component. */ @Component -export struct FindHead { +export default struct FindHead { private searchInfo: string = 'searching...'; @State handlePopup1: boolean = false @State handlePopup2: boolean = false diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/Follow.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/Follow.ets index 3d93b4498..373a6d754 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/Follow.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/Follow.ets @@ -13,10 +13,10 @@ * limitations under the License. */ -import { FollowHead } from './FollowHead'; +import FollowHead from './FollowHead'; import mainViewModel from '../viewmodel/MainViewModel'; import ItemData from '../viewmodel/ItemData'; -import { MineActivityItem } from './MineActivityItem'; +import MineActivityItem from './MineActivityItem'; import MineActivityItemData from '../viewmodel/MineActivityItemData'; import curves from '@ohos.curves' diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/FollowHead.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/FollowHead.ets index 68bc57fff..30edba212 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/FollowHead.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/FollowHead.ets @@ -16,11 +16,9 @@ /** * List item information component. */ -import curves from '@ohos.curves' -import prompt from '@ohos.promptAction'; @Component -export struct FollowHead { +export default struct FollowHead { @State handlePopup1: boolean = false @State handlePopup2: boolean = false diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/Home.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/Home.ets index 15c1ea0b6..53b6b7df3 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/Home.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/Home.ets @@ -18,11 +18,11 @@ import mainViewModel from '../viewmodel/MainViewModel'; import ItemData from '../viewmodel/ItemData'; import MidItemData from '../viewmodel/MidItemData'; import TriItemData from '../viewmodel/TriItemData'; -import { FindHead } from './FindHead'; -import { SmallItem } from './SmallItem'; -import { ListHead } from './ListHead'; -import { MidItem } from './MidItem'; -import { TriItem } from './TriItem'; +import FindHead from './FindHead'; +import SmallItem from './SmallItem'; +import ListHead from './ListHead'; +import MidItem from './MidItem'; +import TriItem from './TriItem'; /** diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/ListHead.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/ListHead.ets index 1ed1339c7..77246813a 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/ListHead.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/ListHead.ets @@ -17,7 +17,7 @@ * List item information component. */ @Component -export struct ListHead { +export default struct ListHead { /** * Image of list item. */ diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MidItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MidItem.ets index 6c2dcf4be..1c78e86f9 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MidItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MidItem.ets @@ -21,7 +21,7 @@ import prompt from '@ohos.promptAction'; * List item information component. */ @Component -export struct MidItem { +export default struct MidItem { private item: ItemData = new ItemData('', $r('app.media.fig1'), '', ''); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/Mine.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/Mine.ets index 5bd3b30bd..8b694e6c0 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/Mine.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/Mine.ets @@ -14,11 +14,8 @@ */ import CommonConstants from '../common/constants/CommonConstants'; -import { MineHead } from './MineHead'; -import { MineInfo } from './MineInfo'; -import { MineListItem } from './MineListItem'; -import MineListItemData from '../viewmodel/MineListItemData'; -import mainViewModel from '../viewmodel/MainViewModel'; +import MineHead from './MineHead'; +import MineInfo from './MineInfo'; import MineMusic from './MineMusic'; import MinePodCast from './MinePodCast'; import MineActivity from './MineActivity'; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineActivity.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineActivity.ets index 3138aad21..a5010a82a 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineActivity.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineActivity.ets @@ -13,7 +13,7 @@ * limitations under the License. */ -import { MineActivityItem } from './MineActivityItem'; +import MineActivityItem from './MineActivityItem'; import MineActivityItemData from '../viewmodel/MineActivityItemData'; import mainViewModel from '../viewmodel/MainViewModel'; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineActivityItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineActivityItem.ets index e53f36975..01eadb412 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineActivityItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineActivityItem.ets @@ -15,17 +15,36 @@ import ItemData from '../viewmodel/MineActivityItemData'; import MineListItemData from '../viewmodel/MineListItemData'; -import { MineListItem } from './MineListItem'; -import { MineUserItem } from './MineUserItem'; +import MineListItem from './MineListItem'; +import MineUserItem from './MineUserItem'; /** * List item information component. */ @Component -export struct MineActivityItem { - private item: ItemData = new ItemData('', $r('app.media.fig21'), +export default struct MineActivityItem { + private item: ItemData = new ItemData('', [$r('app.media.fig21')], new MineListItemData('', $r('app.media.fig21'), '', Visibility.None, Visibility.None), - 0, 0, 0,[],undefined); + 0, 0, 0, [], undefined); + private layoutOptions: GridLayoutOptions = { + regularSize: [1, 1], + irregularIndexes: [0, 7], // 索引为0和7的GridItem占用的列数由onGetIrregularSizeByIndex指定 + onGetIrregularSizeByIndex: (index: number) => { + if (index === 0) { + return [1, 5] + } + return [1, index % 6 + 1] + } + } + @State imgWidth: string = '90%' + + aboutToAppear() { + if (this.item.imgs.length === 2) { + this.imgWidth = '45%' + } else if (this.item.imgs.length > 2) { + this.imgWidth = '30%' + } + } build() { Column() { @@ -34,11 +53,26 @@ export struct MineActivityItem { Text(this.item.title) .margin({ top: '16vp' }) .padding({ left: '64vp' }) - Image(this.item.img) - .width('70%') - .borderRadius('12vp') - .margin({ top: '16vp', left: '64vp' }) - if(this.item.contentItem !== undefined){ + Grid() { + ForEach(this.item.imgs, (img: Resource) => { + GridItem() { + Image(img) + .width(this.imgWidth) + .borderRadius('12vp') + } + }, (img: Resource) => JSON.stringify(img)) + } + .layoutDirection(GridDirection.Row) + .maxCount(3) + .minCount(1) + .columnsGap(10) + .rowsGap(10) + .scrollBar(BarState.Off) + .width('100%') + .margin({ top: '16vp' }) + .padding({ left: '64vp' }) + + if (this.item.contentItem !== undefined) { MineListItem({ item: this.item.contentItem }) .margin({ left: '64vp', top: '16vp' }) .backgroundColor('#e9e9e9') @@ -46,26 +80,27 @@ export struct MineActivityItem { .width('80%') .borderRadius('12vp') } - Row(){ - ForEach(this.item.topics,(topic:string)=>{ + Row() { + ForEach(this.item.topics, (topic: string) => { Text(topic) .fontSize('12vp') .fontColor('#a0a0a0') .padding('4vp') .backgroundColor('#f0f0f0') .borderRadius('8vp') - .margin({right:'4vp'}) + .margin({ right: '4vp' }) }) } .margin({ left: '64vp', top: '16vp' }) + Row() { Row() { Image($r('app.media.ic_public_share')) .width('24vp') .height('24vp') - if(this.item.comments !== 0){ + if (this.item.comments !== 0) { Text(this.item.share.toString()).margin({ left: '4vp' }) - }else{ + } else { Text('分享').margin({ left: '4vp' }) } }.width('25%') @@ -74,9 +109,9 @@ export struct MineActivityItem { Image($r('app.media.ic_public_comments')) .width('24vp') .height('24vp') - if(this.item.comments !== 0){ + if (this.item.comments !== 0) { Text(this.item.comments.toString()).margin({ left: '4vp' }) - }else{ + } else { Text('评论').margin({ left: '4vp' }) } }.width('25%') @@ -85,9 +120,9 @@ export struct MineActivityItem { Image($r('app.media.ic_public_thumbsup')) .width('24vp') .height('24vp') - if(this.item.comments !== 0){ + if (this.item.comments !== 0) { Text(this.item.comments.toString()).margin({ left: '4vp' }) - }else{ + } else { Text('赞').margin({ left: '4vp' }) } }.width('25%') @@ -100,7 +135,9 @@ export struct MineActivityItem { .padding({ left: '64vp' }) .margin({ top: '16vp' }) .justifyContent(FlexAlign.SpaceBetween) - }.alignItems(HorizontalAlign.Start) - .margin({bottom:'12vp'}) + } + + .alignItems(HorizontalAlign.Start) + .margin({ bottom: '12vp' }) } } \ No newline at end of file diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineHead.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineHead.ets index ed0cf91ec..fefdee978 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineHead.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineHead.ets @@ -20,7 +20,7 @@ import curves from '@ohos.curves' import prompt from '@ohos.promptAction'; @Component -export struct MineHead { +export default struct MineHead { @State handlePopup1: boolean = false @State handlePopup2: boolean = false @Consume addVisibility: boolean diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineInfo.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineInfo.ets index 8084b73bc..b8566ee43 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineInfo.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineInfo.ets @@ -17,7 +17,7 @@ * List item information component. */ @Component -export struct MineInfo { +export default struct MineInfo { @Consume addVisibility: Visibility @Consume nameVisibility: Visibility diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineListItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineListItem.ets index 8cbfa61cc..326e1dad7 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineListItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineListItem.ets @@ -14,14 +14,13 @@ */ import ItemData from '../viewmodel/MineListItemData'; -import hilog from '@ohos.hilog'; import prompt from '@ohos.promptAction'; /** * List item information component. */ @Component -export struct MineListItem { +export default struct MineListItem { private item: ItemData = new ItemData('', $r('app.media.fig21'), '', Visibility.None, Visibility.None); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineMusic.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineMusic.ets index 0c8cbfc4b..93d2cf5a6 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineMusic.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineMusic.ets @@ -14,7 +14,7 @@ */ import CommonConstants from '../common/constants/CommonConstants'; -import { MineListItem } from './MineListItem'; +import MineListItem from './MineListItem'; import MineListItemData from '../viewmodel/MineListItemData'; import mainViewModel from '../viewmodel/MainViewModel'; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MinePodCast.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MinePodCast.ets index 841e74081..60cebe616 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MinePodCast.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MinePodCast.ets @@ -14,11 +14,11 @@ */ import CommonConstants from '../common/constants/CommonConstants'; -import { MineListItem } from './MineListItem'; +import MineListItem from './MineListItem'; import MineListItemData from '../viewmodel/MineListItemData'; import mainViewModel from '../viewmodel/MainViewModel'; -import { ListHead } from './ListHead'; -import { MidItem } from './MidItem'; +import ListHead from './ListHead'; +import MidItem from './MidItem'; import MidItemData from '../viewmodel/MidItemData'; /** diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineUserItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineUserItem.ets index d5832a875..9a323e72a 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/MineUserItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/MineUserItem.ets @@ -19,7 +19,7 @@ import ItemData from '../viewmodel/MineListItemData'; * List item information component. */ @Component -export struct MineUserItem { +export default struct MineUserItem { private item: ItemData = new ItemData('', $r('app.media.fig21'), '', Visibility.None, Visibility.None); build() { diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PlayerBar.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PlayerBar.ets index 10bac408c..b9014ebf9 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PlayerBar.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PlayerBar.ets @@ -17,7 +17,7 @@ * List item information component. */ @Component -export struct PlayerBar { +export default struct PlayerBar { @Consume playingTitle: string; @Consume playingArtist: string; @Consume playingImg: Resource; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCast.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCast.ets index 234f257e0..83f8ee886 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCast.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCast.ets @@ -14,8 +14,8 @@ */ import CommonConstants from '../common/constants/CommonConstants'; -import { PodCastHead } from './PodCastHead'; -import { PodCastHeadRight } from './PodCastHeadRight'; +import PodCastHead from './PodCastHead'; +import PodCastHeadRight from './PodCastHeadRight'; import PodCastContentFirst from './PodCastContentFirst'; import PodCastContentSecond from './PodCastContentSecond'; import PodCastContentThird from './PodCastContentThird'; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastBigItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastBigItem.ets index 5dc70e5f6..d43e2d68e 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastBigItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastBigItem.ets @@ -20,7 +20,7 @@ import prompt from '@ohos.promptAction'; * List item information component. */ @Component -export struct PodCastBigItem { +export default struct PodCastBigItem { private item: ItemData = new ItemData('', $r('app.media.fig1'), '', '', '', '', ''); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentFirst.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentFirst.ets index e1867e021..76c3c5f58 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentFirst.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentFirst.ets @@ -16,10 +16,10 @@ import CommonConstants from '../common/constants/CommonConstants'; import ItemData from '../viewmodel/ItemData'; import MidItemData from '../viewmodel/MidItemData'; -import { RadioItem } from './RadioItem' +import RadioItem from './RadioItem' import mainViewModel from '../viewmodel/MainViewModel'; -import { ListHead } from './ListHead'; -import { MidItem } from './MidItem'; +import ListHead from './ListHead'; +import MidItem from './MidItem'; /** * Setting tab content @@ -42,7 +42,6 @@ export default struct PodCastContentFirst { .width('20%') .height('16vp') } - //.backgroundColor('#00ff00') .justifyContent(FlexAlign.SpaceBetween) .height('32vp') .onClick(() => { @@ -73,8 +72,6 @@ export default struct PodCastContentFirst { .scrollBar(BarState.Off) .edgeEffect(EdgeEffect.Spring) - //.scrollSnap({snapAlign:ScrollSnapAlign.START, snapPagination:400, enableSnapToStart:true, enableSnapToEnd:true}) - Column() { Text(': : : : : : : : : : : : : : : 随身听FM : : : : : : : : : : : : : : :') .fontColor(Color.Grey) diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentFourth.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentFourth.ets index 6a1e7cac7..5fb9dade6 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentFourth.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentFourth.ets @@ -16,11 +16,11 @@ import CommonConstants from '../common/constants/CommonConstants'; import PodCastBigItemData from '../viewmodel/PodCastBigItemData'; import mainViewModel from '../viewmodel/MainViewModel'; -import { PodCastListenItem } from './PodCastListenItem'; +import PodCastListenItem from './PodCastListenItem'; import SelectFirstItemData from '../viewmodel/SelectFirstItemData'; -import { SelectFirstItem } from './SelectFirstItem'; -import { ListHead } from './ListHead'; -import { MidItem } from './MidItem'; +import SelectFirstItem from './SelectFirstItem'; +import ListHead from './ListHead'; +import MidItem from './MidItem'; import MidItemData from '../viewmodel/MidItemData'; /** diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentSecond.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentSecond.ets index 92b3d9188..cfcc9f683 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentSecond.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentSecond.ets @@ -15,15 +15,12 @@ import CommonConstants from '../common/constants/CommonConstants'; import ItemData from '../viewmodel/ItemData'; -import MidItemData from '../viewmodel/MidItemData'; -import { RadioItem } from './RadioItem' import mainViewModel from '../viewmodel/MainViewModel'; -import { ListHead } from './ListHead'; -import { MidItem } from './MidItem'; -import { BookFirstItem } from './BookFirstItem'; -import { BookSecondItem } from './BookSecondItem'; +import ListHead from './ListHead'; +import BookFirstItem from './BookFirstItem'; +import BookSecondItem from './BookSecondItem'; import BookTriItemData from '../viewmodel/BookTriItemData'; -import { BookTriItem } from './BookTriItem'; +import BookTriItem from './BookTriItem'; /** * Setting tab content diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentThird.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentThird.ets index 5ac5d20e0..0c39e8818 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentThird.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastContentThird.ets @@ -17,10 +17,10 @@ import CommonConstants from '../common/constants/CommonConstants'; import ItemData from '../viewmodel/ItemData'; import PodCastBigItemData from '../viewmodel/PodCastBigItemData'; import mainViewModel from '../viewmodel/MainViewModel'; -import { ListHead } from './ListHead'; -import { PodCastBigItem } from './PodCastBigItem'; +import ListHead from './ListHead'; +import PodCastBigItem from './PodCastBigItem'; import BookTriItemData from '../viewmodel/BookTriItemData'; -import { BookTriItem } from './BookTriItem'; +import BookTriItem from './BookTriItem'; /** * Setting tab content diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastHead.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastHead.ets index fc711ea7a..7b81ef993 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastHead.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastHead.ets @@ -17,7 +17,7 @@ * List item information component. */ @Component -export struct PodCastHead { +export default struct PodCastHead { @State handlePopup: boolean = false build() { diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastHeadRight.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastHeadRight.ets index be87e51eb..cd2f94008 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastHeadRight.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastHeadRight.ets @@ -17,7 +17,7 @@ * List item information component. */ @Component -export struct PodCastHeadRight { +export default struct PodCastHeadRight { @State handlePopup: boolean = false build() { diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastListenItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastListenItem.ets index 537d25274..16d9d39d1 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastListenItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/PodCastListenItem.ets @@ -14,14 +14,13 @@ */ import ItemData from '../viewmodel/PodCastBigItemData'; -import hilog from '@ohos.hilog'; import prompt from '@ohos.promptAction'; /** * List item information component. */ @Component -export struct PodCastListenItem { +export default struct PodCastListenItem { private item: ItemData = new ItemData('', $r('app.media.fig1'), '', '', '', '', ''); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/RadioItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/RadioItem.ets index 9a2c7b6e6..dc1aafc1b 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/RadioItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/RadioItem.ets @@ -14,14 +14,13 @@ */ import ItemData from '../viewmodel/RadioItemData'; -import hilog from '@ohos.hilog'; import prompt from '@ohos.promptAction'; /** * List item information component. */ @Component -export struct RadioItem { +export default struct RadioItem { private items: ItemData[] = new Array(); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/SelectFirstItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/SelectFirstItem.ets index b6fd0f35d..dcbc2ab4b 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/SelectFirstItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/SelectFirstItem.ets @@ -20,7 +20,7 @@ import prompt from '@ohos.promptAction'; * List item information component. */ @Component -export struct SelectFirstItem { +export default struct SelectFirstItem { private item: ItemData = new ItemData('', $r('app.media.fig1'), '', 'ffffff'); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/SmallItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/SmallItem.ets index 985ede521..7bda736c7 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/SmallItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/SmallItem.ets @@ -20,7 +20,7 @@ import prompt from '@ohos.promptAction'; * List item information component. */ @Component -export struct SmallItem { +export default struct SmallItem { private item: ItemData = new ItemData('', $r('app.media.fig1'), '', $r('app.media.fig1')); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/view/TriItem.ets b/scenario/arkui/MyMusic/entry/src/main/ets/view/TriItem.ets index b94ad28fb..7b277ee1c 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/view/TriItem.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/view/TriItem.ets @@ -14,14 +14,13 @@ */ import ItemData from '../viewmodel/TriItemData'; -import hilog from '@ohos.hilog'; import prompt from '@ohos.promptAction'; /** * List item information component. */ @Component -export struct TriItem { +export default struct TriItem { private items: ItemData[] = new Array(); @Consume playingTitle: string; @Consume playingArtist: string; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/viewmodel/MainViewModel.ets b/scenario/arkui/MyMusic/entry/src/main/ets/viewmodel/MainViewModel.ets index d070a20ad..5c939016c 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/viewmodel/MainViewModel.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/viewmodel/MainViewModel.ets @@ -377,10 +377,10 @@ export class MainViewModel { getMineActivityItemData(): Array { let listData: MineActivityItemData[] = [ - new MineActivityItemData('四年好短啊~', $r('app.media.fig21'), + new MineActivityItemData('四年好短啊~', [$r('app.media.fig21')], new MineListItemData('闲潭春半', $r('app.media.brand'), '8月23日', Visibility.Visible, Visibility.Visible), 0, 1, 1, ['#心语推歌墙'], new MineListItemData('想着你', $r('app.media.fig31'), '郭顶', Visibility.None, Visibility.None)), - new MineActivityItemData('也是有证的村民了', $r('app.media.found'), + new MineActivityItemData('也是有证的村民了', [$r('app.media.found')], new MineListItemData('闲潭春半', $r('app.media.brand'), '2021年9月22日', Visibility.None, Visibility.None), 0, 0, 0, ['#晒晒我的村民证件', '#集合啦村民们']) ]; @@ -388,10 +388,16 @@ export class MainViewModel { } getFollowActivityItemData(): Array { let listData: MineActivityItemData[] = [ - new MineActivityItemData('知道你们很着急,年末惊喜来袭~\n2023云音乐年度听歌报告正式上线啦!\n一键开启你的年度听过报告,回归你的2023!', $r('app.media.fig21'), + new MineActivityItemData('1知道你们很着急,年末惊喜来袭~\n2023云音乐年度听歌报告正式上线啦!\n一键开启你的年度听过报告,回归你的2023!', [$r('app.media.fig1')], new MineListItemData('云音乐VIP', $r('app.media.brand'), '昨天12:03', Visibility.Visible, Visibility.Visible), 11, 667, 1996, ['#2023年度听歌报告']), - new MineActivityItemData('也是有证的村民了', $r('app.media.found'), + new MineActivityItemData('2,年末惊喜来袭~\n2023云音乐年度听歌报告正式上线啦!\n一键开启你的年度听过报告,回归你的2023!', [$r('app.media.fig1'),$r('app.media.fig2')], + new MineListItemData('云音乐VIP', $r('app.media.brand'), '昨天12:03', Visibility.Visible, Visibility.Visible), + 11, 667, 1996, ['#2023年度听歌报告']), + new MineActivityItemData('3知道你们很着急,年末惊喜来袭~\n2023云音乐年度听歌报告正式上线啦!\n一键开启你的年度听过报告,回归你的2023!', [$r('app.media.fig1'),$r('app.media.fig2'),$r('app.media.fig3')], + new MineListItemData('云音乐VIP', $r('app.media.brand'), '昨天12:03', Visibility.Visible, Visibility.Visible), + 11, 667, 1996, ['#2023年度听歌报告']), + new MineActivityItemData('也是有证的村民了', [$r('app.media.found')], new MineListItemData('闲潭春半', $r('app.media.brand'), '2021年9月22日', Visibility.None, Visibility.None), 0, 0, 0, ['#晒晒我的村民证件', '#集合啦村民们']) ]; @@ -399,16 +405,16 @@ export class MainViewModel { } getRecommendActivityItemData(): Array { let listData: MineActivityItemData[] = [ - new MineActivityItemData('四年好短啊~', $r('app.media.fig21'), + new MineActivityItemData('四年好短啊~', [$r('app.media.fig21'),$r('app.media.brand1'),$r('app.media.fig31'),$r('app.media.fig41'),$r('app.media.fig1'),$r('app.media.fig2'),$r('app.media.fig3')], new MineListItemData('闲潭春半', $r('app.media.brand'), '8月23日', Visibility.Visible, Visibility.Visible), 0, 1, 1, ['#心语推歌墙'], new MineListItemData('想着你', $r('app.media.fig31'), '郭顶', Visibility.None, Visibility.None)), - new MineActivityItemData('也是有证的村民了', $r('app.media.found'), + new MineActivityItemData('也是有证的村民了', [$r('app.media.found')], new MineListItemData('闲潭春半', $r('app.media.brand'), '2021年9月22日', Visibility.None, Visibility.None), 0, 0, 0, ['#晒晒我的村民证件', '#集合啦村民们']), - new MineActivityItemData('2也是有证的村民了', $r('app.media.found'), + new MineActivityItemData('2也是有证的村民了', [$r('app.media.found')], new MineListItemData('闲潭春半', $r('app.media.brand'), '2021年9月22日', Visibility.None, Visibility.None), 0, 0, 0, ['#晒晒我的村民证件', '#集合啦村民们']), - new MineActivityItemData('3也是有证的村民了', $r('app.media.found'), + new MineActivityItemData('3也是有证的村民了', [$r('app.media.found')], new MineListItemData('闲潭春半', $r('app.media.brand'), '2021年9月22日', Visibility.None, Visibility.None), 0, 0, 0, ['#晒晒我的村民证件', '#集合啦村民们']) ]; diff --git a/scenario/arkui/MyMusic/entry/src/main/ets/viewmodel/MineActivityItemData.ets b/scenario/arkui/MyMusic/entry/src/main/ets/viewmodel/MineActivityItemData.ets index 6765e96b7..5ab804cfe 100644 --- a/scenario/arkui/MyMusic/entry/src/main/ets/viewmodel/MineActivityItemData.ets +++ b/scenario/arkui/MyMusic/entry/src/main/ets/viewmodel/MineActivityItemData.ets @@ -25,7 +25,7 @@ export default class MineActivityItemData { /** * Image of list item. */ - img: Resource; + imgs: Resource[]; /** * Other resource of list item. */ @@ -36,9 +36,9 @@ export default class MineActivityItemData { thumbs: number; topics:string[] - constructor(title: string, img: Resource, userItem: MineListItemData, share: number, comments: number, thumbs: number,topics:string[], contentItem?: MineListItemData) { + constructor(title: string, imgs: Resource[], userItem: MineListItemData, share: number, comments: number, thumbs: number,topics:string[], contentItem?: MineListItemData) { this.title = title; - this.img = img; + this.imgs = imgs; this.userItem = userItem; this.contentItem = contentItem; this.share = share; -- Gitee