From 51ea12ca6708b0c131456019486ef93682f8f339 Mon Sep 17 00:00:00 2001 From: zhangyuming27 Date: Wed, 29 Oct 2025 18:00:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=86=E5=87=BA=E6=A0=A1=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.en.md | 12 ++++----- build-profile.json5 | 2 +- .../ets/constants/ProductDetailConstants.ets | 18 +++++-------- entry/src/main/ets/utils/WindowUtil.ets | 26 +------------------ .../DoubleConversationView/MessageBubble.ets | 20 -------------- .../DoubleConversationView/ProductPage.ets | 5 ++-- .../productView/ProductUtilView.ets | 2 -- .../src/main/ets/views/TabsView/TabsView.ets | 3 ++- entry/src/main/module.json5 | 6 +++-- 9 files changed, 22 insertions(+), 72 deletions(-) diff --git a/README.en.md b/README.en.md index 7d3dcdc..c6f7cd7 100644 --- a/README.en.md +++ b/README.en.md @@ -2,7 +2,7 @@ ## Overview -This sample demonstrates how to use the responsive capability of one-time development for multi-device deployment provided by HarmonyOS to implement common responsive layouts on multiple devices (smartphones, large-sized foldables, wide foldables, trifold devices, tablets and PC devices). +This sample demonstrates how to use the responsive capability of one-time development for multi-device deployment provided by HarmonyOS to implement common responsive layouts on multiple devices (smartphones, large-sized foldables, wide foldables, trifold devices, tablets and PC/2in1 devices). ## Preview @@ -65,10 +65,10 @@ In the two-column and three-column layouts, Conversation, Calendar, and Mailbox │ │ ├──model │ │ │ └──ConversationData.ets // Conversation Data type │ │ ├──productView -│ │ │ │──CommonView.ets // Product common view -│ │ │ │──ProductConfig.ets // Product config part -│ │ │ │──ProductDiscount.ets // Product discount part -│ │ │ │──ProductPrice.ets // Product price part +│ │ │ ├──CommonView.ets // Product common view +│ │ │ ├──ProductConfig.ets // Product config part +│ │ │ ├──ProductDiscount.ets // Product discount part +│ │ │ ├──ProductPrice.ets // Product price part │ │ │ └──ProductUtilView.ets // Product util part │ │ ├──ConversationDetail.ets // Conversation detail page │ │ ├──ConversationDetailNone.ets // Default conversation page @@ -86,7 +86,7 @@ In the two-column and three-column layouts, Conversation, Calendar, and Mailbox │ │ └──VideoInfoView.ets // Video content page │ ├──TripleCalendarView // Triple-column calendar view catalogue │ │ ├──model -│ │ │ │──CalendarItem.ets // Calendar data types +│ │ │ ├──CalendarItem.ets // Calendar data types │ │ │ └──TripData.ets // Trip shedule data types │ │ ├──CalendarSideBarView.ets // Calendar sidebar │ │ ├──CalendarView.ets // Calendar content page diff --git a/build-profile.json5 b/build-profile.json5 index c4e8cef..85f1c1c 100644 --- a/build-profile.json5 +++ b/build-profile.json5 @@ -6,7 +6,7 @@ "name": "default", "signingConfig": "default", "targetSdkVersion": "6.0.0(20)", - "compatibleSdkVersion": "6.0.0(20)", + "compatibleSdkVersion": "5.0.5(17)", "runtimeOS": "HarmonyOS", "buildOption": { "strictMode": { diff --git a/entry/src/main/ets/constants/ProductDetailConstants.ets b/entry/src/main/ets/constants/ProductDetailConstants.ets index c20bacb..c1227d5 100644 --- a/entry/src/main/ets/constants/ProductDetailConstants.ets +++ b/entry/src/main/ets/constants/ProductDetailConstants.ets @@ -51,8 +51,7 @@ export class DetailConstants { /** * Button names. */ - static readonly BUTTON_NAMES = ((context: Context): string[] => - { + static readonly BUTTON_NAMES = ((context: Context): string[] => { try { return [ context.resourceManager.getStringSync($r('app.string.add_cart').id), @@ -68,8 +67,7 @@ export class DetailConstants { /** * Product config list. */ - static readonly PRODUCT_CONFIG_NAMES = ((context: Context): string[] => - { + static readonly PRODUCT_CONFIG_NAMES = ((context: Context): string[] => { try { return [ context.resourceManager.getStringSync($r('app.string.PRODUCT_CONFIG_NAMES1').id), @@ -91,8 +89,7 @@ export class DetailConstants { /** * User comment list. */ - static readonly USER_COMMENT_NAMES = ((context: Context): string[] => - { + static readonly USER_COMMENT_NAMES = ((context: Context): string[] => { try { return [ context.resourceManager.getStringSync($r('app.string.USER_COMMENT_NAMES1').id), @@ -119,8 +116,7 @@ export class DetailConstants { /** * Picture number. */ - static readonly PICTURE_INDICATOR = ((context: Context): string[] => - { + static readonly PICTURE_INDICATOR = ((context: Context): string[] => { try { return ['/5', '3D', context.resourceManager.getStringSync($r('app.string.compare').id)] @@ -139,8 +135,7 @@ export class DetailConstants { /** * Product discount name list. */ - static readonly PRODUCT_DISCOUNT_NAMES = ((context: Context): string[] => - { + static readonly PRODUCT_DISCOUNT_NAMES = ((context: Context): string[] => { try { return [ context.resourceManager.getStringSync($r('app.string.PRODUCT_DISCOUNT_NAMES1').id), @@ -156,8 +151,7 @@ export class DetailConstants { /** * Product price name list. */ - static readonly PRODUCT_PRICE_NAMES = ((context: Context): string[] => - { + static readonly PRODUCT_PRICE_NAMES = ((context: Context): string[] => { try { return ['¥', '12999', '¥13999', context.resourceManager.getStringSync($r('app.string.PRODUCT_PRICE_NAMES1').id), diff --git a/entry/src/main/ets/utils/WindowUtil.ets b/entry/src/main/ets/utils/WindowUtil.ets index 16ef24e..3b0367e 100644 --- a/entry/src/main/ets/utils/WindowUtil.ets +++ b/entry/src/main/ets/utils/WindowUtil.ets @@ -14,12 +14,11 @@ */ // [Start WindowUtil] -import { display, UIContext, window } from '@kit.ArkUI'; +import { UIContext, window } from '@kit.ArkUI'; import { BusinessError } from '@kit.BasicServicesKit'; import { hilog } from '@kit.PerformanceAnalysisKit'; import { StartOptions, AbilityConstant, Want, common } from '@kit.AbilityKit'; import { resourceManager } from '@kit.LocalizationKit'; -import { sensor } from '@kit.SensorServiceKit'; export enum ImmersiveType { NORMAL, @@ -309,17 +308,6 @@ export class WindowUtil { } // [End resize] - queryOrientationByDisplay(): void { - // [Start queryOrientationByDisplay] - try { - let displayClass: display.Display | null = display.getDefaultDisplaySync(); - } catch (error) { - let err = error as BusinessError; - hilog.error(0x0000, 'testLog', `Failed to query display orientation. Code: ${err.code}, message: ${err.message}`); - } - // [End queryOrientationByDisplay] - } - queryOrientationByResourceManager(): void { // [Start queryByByRM] let info: resourceManager.Direction | undefined = @@ -328,18 +316,6 @@ export class WindowUtil { // [End queryByByRM] } - // [Start queryDegree] - queryDegree(): void { - try { - sensor.on(sensor.SensorId.GRAVITY, (data: sensor.GravityResponse) => { - let degree: number = this.getCalDegree(data.x, data.y, data.z); - }) - } catch (error) { - let err = error as BusinessError; - hilog.error(0x0000, 'TestLog', `Failed to query degree. Code: ${err.code}, message: ${err.message}`); - } - } - getCalDegree(x: number, y: number, z: number): number { let degree: number = 0; // three is Effective Delta Angle Threshold Coefficient. diff --git a/entry/src/main/ets/views/DoubleConversationView/MessageBubble.ets b/entry/src/main/ets/views/DoubleConversationView/MessageBubble.ets index 86bf594..93bf2c3 100755 --- a/entry/src/main/ets/views/DoubleConversationView/MessageBubble.ets +++ b/entry/src/main/ets/views/DoubleConversationView/MessageBubble.ets @@ -174,24 +174,4 @@ struct IntroduceText { .lineHeight('21fp') .fontWeight(this.fontWeight) } -} - -@Component -struct TabText { - @Prop data: string = ''; - @Prop resourceData: Resource; - @Prop fontSize: string = '11fp'; - @Prop fontColor: string = "#000000"; - @Prop fontWeight: number = 500; - @Prop fontFamily: string = "HarmonyHeiTi-Medium"; - - build() { - Text(this.data || this.resourceData) - .fontFamily(this.fontFamily) - .fontSize(this.fontSize) - .fontColor(this.fontColor) - .textAlign(TextAlign.Center) - .lineHeight('21fp') - .fontWeight(this.fontWeight) - } } \ No newline at end of file diff --git a/entry/src/main/ets/views/DoubleConversationView/ProductPage.ets b/entry/src/main/ets/views/DoubleConversationView/ProductPage.ets index 352dfbf..47b412e 100644 --- a/entry/src/main/ets/views/DoubleConversationView/ProductPage.ets +++ b/entry/src/main/ets/views/DoubleConversationView/ProductPage.ets @@ -40,7 +40,8 @@ export struct ProductPage { build() { NavDestination(){ Row() { - if (this.mainWindowInfo.widthBp === WidthBreakpoint.WIDTH_SM || this.mainWindowInfo.widthBp === WidthBreakpoint.WIDTH_MD) { + if (this.mainWindowInfo.widthBp === WidthBreakpoint.WIDTH_SM || + this.mainWindowInfo.widthBp === WidthBreakpoint.WIDTH_MD) { Column() { Row() { Image($r('app.media.ic_public_back')) @@ -262,8 +263,6 @@ export struct ProductPicture { } .backgroundColor(Color.White) } - - } @Component diff --git a/entry/src/main/ets/views/DoubleConversationView/productView/ProductUtilView.ets b/entry/src/main/ets/views/DoubleConversationView/productView/ProductUtilView.ets index 174f864..75028df 100644 --- a/entry/src/main/ets/views/DoubleConversationView/productView/ProductUtilView.ets +++ b/entry/src/main/ets/views/DoubleConversationView/productView/ProductUtilView.ets @@ -24,8 +24,6 @@ import { WindowInfo } from '../../../utils/WindowUtil'; export struct ProductUtilView { @ObjectLink mainWindowInfo: WindowInfo; @State detailType: string = CommonConstants.BIND_SHEET_PAGE_TYPES[3]; - @Consume('pageInfos') pageInfos: NavPathStack; - private context: Context = this.getUIContext().getHostContext()! build() { diff --git a/entry/src/main/ets/views/TabsView/TabsView.ets b/entry/src/main/ets/views/TabsView/TabsView.ets index b96ce29..ed911a8 100644 --- a/entry/src/main/ets/views/TabsView/TabsView.ets +++ b/entry/src/main/ets/views/TabsView/TabsView.ets @@ -60,7 +60,8 @@ export struct TabsView { build() { // [Start diff_device_container] // entry/src/main/ets/view/TabsView/TabsView.ets - if (this.mainWindowInfo.widthBp === WidthBreakpoint.WIDTH_XL || deviceInfo.deviceType == "2in1") { + if ((this.mainWindowInfo.widthBp === WidthBreakpoint.WIDTH_LG || this.mainWindowInfo.widthBp + === WidthBreakpoint.WIDTH_XL)&& deviceInfo.deviceType == "2in1") { // Use SideBarContainer at XL breakpoint. SideBarContainer(SideBarContainerType.Embed) { TabSideBarView({ diff --git a/entry/src/main/module.json5 b/entry/src/main/module.json5 index b171531..08d7bcf 100644 --- a/entry/src/main/module.json5 +++ b/entry/src/main/module.json5 @@ -31,8 +31,10 @@ "actions": [ "action.system.home" ] - } - ] + }, + ], + "minWindowHeight": 600, + "minWindowWidth": 840 } ], "extensionAbilities": [ -- Gitee