diff --git a/entry/src/main/ets/pages/Index.ets b/entry/src/main/ets/pages/Index.ets index 697f387..45db76e 100644 --- a/entry/src/main/ets/pages/Index.ets +++ b/entry/src/main/ets/pages/Index.ets @@ -17,125 +17,125 @@ import router from '@system.router'; @Entry @ComponentV2 struct Index { - - getResourceString(res:Resource){ + getResourceString(res: Resource) { return getContext().resourceManager.getStringSync(res.id) } - aboutToAppear(): void { } build() { - Scroll(){ + Scroll() { Column() { - Button($r('app.string.Test_ImageAnimator')).onClick(()=>{ + Button($r('app.string.Test_ImageAnimator')).onClick(() => { router.push({ uri: 'pages/ImageAnimatorPage', }); }) - Button($r('app.string.Test_multiple_images')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_multiple_images')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestCommonImage', }); }) - Button(this.getResourceString($r('app.string.Multiple_images')) + " + reuse + LazyForeach").margin({top:10}).onClick(()=>{ - router.push({ - uri: 'pages/UserPage', + Button(this.getResourceString($r('app.string.Multiple_images')) + " + reuse + LazyForeach") + .margin({ top: 10 }) + .onClick(() => { + router.push({ + uri: 'pages/UserPage', - }); - }) - Button($r('app.string.Test_SingleImage')).margin({top:10}).onClick(()=>{ + }); + }) + Button($r('app.string.Test_SingleImage')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/SingleImage', }); }) - Button($r('app.string.Display_long_image')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Display_long_image')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/LongImagePage', }); }) - Button($r('app.string.Image_Transformation')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Image_Transformation')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/ImageTransformation', }); }) - Button($r('app.string.Test_media_URL')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_media_URL')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/dataShareUriLoadPage', }); }) - Button($r('app.string.Different_ObjectFit')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Different_ObjectFit')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/ObjectFitPage', }); }) - Button($r('app.string.Custom_cache_key')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Custom_cache_key')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/SignatureTestPage', }); }) - Button($r('app.string.Test_image_loading_success_or_failure_events')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_image_loading_success_or_failure_events')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/LoadStatePage', }) }) - Button($r('app.string.Image_scaling')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Image_scaling')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TransformPage', }); }) - Button($r('app.string.Test_HSP')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_HSP')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestHspPreLoadImage', }); }) - Button($r('app.string.Test_custom_download')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_custom_download')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestSetCustomImagePage', }); }) - Button(this.getResourceString($r('app.string.Message_list')) + " + List").margin({top:10}).onClick(()=>{ + Button(this.getResourceString($r('app.string.Message_list')) + " + List").margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestImageFlash', }); }) - Button($r('app.string.Preloading_images_to_cache')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Preloading_images_to_cache')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestPrefetchToFileCache', }); }) - Button($r('app.string.Retrieve_image_display_from_cache')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Retrieve_image_display_from_cache')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestIsUrlExist', }); }) - Button($r('app.string.Test_single_request_header')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_single_request_header')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestHeader', }); }) - Button($r('app.string.Test_write_cache_strategy')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_write_cache_strategy')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestWriteCacheStage', @@ -143,41 +143,39 @@ struct Index { }) - Button($r('app.string.Test_removing_image_cache_interface')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_removing_image_cache_interface')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestRemoveCache', }); }) - Button($r('app.string.Test_error_image_display')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_error_image_display')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestErrorHolderPage', }); }) - Button($r('app.string.Test_Task_error')).margin({top:10}).onClick(()=>{ + Button($r('app.string.Test_Task_error')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestTaskResourcePage', }); }) - Button("测试缓存数据").margin({top:10}).onClick(()=>{ + Button($r('app.string.test_cache_btn')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestCacheDataPage', }); }) - Button("测试颜色变换").margin({top:10}).onClick(()=>{ + Button($r('app.string.test_change_color_btn')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestChangeColorPage', - }); }) - Button("测试加载取消回调接口").margin({top:10}).onClick(()=>{ + Button($r('app.string.test_cancel_callback_btn')).margin({ top: 10 }).onClick(() => { router.push({ uri: 'pages/TestLoadCancelListenerPage', - }); }) } - } .width('100%') + }.width('100%') .height('100%') } } \ No newline at end of file diff --git a/entry/src/main/ets/pages/LoadStatePage.ets b/entry/src/main/ets/pages/LoadStatePage.ets index a697c75..876a74e 100644 --- a/entry/src/main/ets/pages/LoadStatePage.ets +++ b/entry/src/main/ets/pages/LoadStatePage.ets @@ -79,9 +79,9 @@ struct LoadStatePage { }) } .margin({ top: 20 }) - Text("格式:"+this.typeValue) - Text("宽度:"+this.currentWidth) - Text("高度:"+this.currentHeight) + Text($r('app.string.image_format',this.typeValue)) + Text($r('app.string.image_width',this.currentWidth)) + Text($r('app.string.image_height',this.currentHeight)) ImageKnifeComponent({ imageKnifeOption: this.ImageKnifeOption }).height(this.currentHeight).width(this.currentWidth) .margin({ top: 20 }) Button($r('app.string.Custom_download_failed')).onClick(()=>{ diff --git a/entry/src/main/ets/pages/TestCacheDataPage.ets b/entry/src/main/ets/pages/TestCacheDataPage.ets index 3cdb530..e8da530 100644 --- a/entry/src/main/ets/pages/TestCacheDataPage.ets +++ b/entry/src/main/ets/pages/TestCacheDataPage.ets @@ -1,13 +1,31 @@ +/* + * Copyright (C) 2024 Huawei Device 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 { ImageKnife, CacheStrategy, ImageKnifeComponent, ImageKnifeOption } from '@ohos/imageknife'; @Entry @ComponentV2 struct TestCacheDataPage { - @Local cacheUpLimit: string = '当前缓存上限: 0M'; - @Local currentNum: string = '当前缓存图片数量: 0'; - @Local currentSize: string = '当前缓存的大小: 0M'; + @Local cacheUpLimit: number = 0; + @Local currentNum: number = 0; + @Local currentSize: number = 0; @Local currentWidth: number = 200 @Local currentHeight: number = 200 + @Local markersLimitText: string = getContext(this).resourceManager.getStringSync($r('app.string.memory')) + @Local markersNumText: string = getContext(this).resourceManager.getStringSync($r('app.string.memory')) + @Local markersSizeText: string = getContext(this).resourceManager.getStringSync($r('app.string.memory')) @Local ImageKnifeOption: ImageKnifeOption = new ImageKnifeOption({ loadSrc: "", objectFit: ImageFit.Contain, @@ -23,7 +41,7 @@ struct TestCacheDataPage { }) aboutToAppear(): void { - ImageKnife.getInstance().initFileCache(getContext(this), 256, 256 * 1024 * 1024,"ImageKnifeCache1") + ImageKnife.getInstance().initFileCache(getContext(this), 256, 256 * 1024 * 1024, "ImageKnifeCache1") } build() { @@ -35,66 +53,88 @@ struct TestCacheDataPage { .width(this.currentWidth) .margin({ top: 10 }) - Button('内存加载图片') + Button($r('app.string.load_memory')) .onClick(() => { this.ImageKnifeOption = new ImageKnifeOption({ - loadSrc: "https://img0.baidu.com/it/u=1530797181,174436037&fm=253&fmt=auto&app=120&f=JPEG?w=1422&h=800", + loadSrc: "https://contentcenter-drcn.dbankcdn.cn/pub_1/DevEcoSpace_1_900_9/3e/v3/LqRoLI-PRSu9Nqa8KdJ-pQ/dSqskBpSR9eraAMn7NBdqA.jpg", objectFit: ImageFit.Contain, - writeCacheStrategy:CacheStrategy.Memory, + writeCacheStrategy: CacheStrategy.Memory, border: { radius: 50 }, }) }) - Button('磁盘缓存加载图片') + Button($r('app.string.load_disk')) .onClick(() => { this.ImageKnifeOption = new ImageKnifeOption({ - loadSrc: "https://q7.itc.cn/images01/20240223/ce80229bf9934dff97cdf2ad7be1dcb8.jpeg", + loadSrc: "https://contentcenter-drcn.dbankcdn.cn/pub_1/DevEcoSpace_1_900_9/56/v3/8MdhfSsCSMKj4sA6okUWrg/5uBx56tLTUO3RYQl-E5JiQ.jpg", objectFit: ImageFit.Contain, - writeCacheStrategy:CacheStrategy.File, + writeCacheStrategy: CacheStrategy.File, border: { radius: 50 }, }) }) - Text(this.cacheUpLimit).fontSize(20).margin({bottom:8}); - Text(this.currentNum).fontSize(20).margin({bottom:8}); - Text(this.currentSize).fontSize(20).margin({bottom:20}); + Text($r('app.string.cur_cache_limit', this.markersLimitText, this.cacheUpLimit)) + .fontSize(20) + .margin({ bottom: 8 }); + Text($r('app.string.cur_cache_image_num', this.markersNumText, this.currentNum)) + .fontSize(20) + .margin({ bottom: 8 }); + Text($r('app.string.cur_cache_size', this.markersSizeText, this.currentSize)).fontSize(20).margin({ bottom: 20 }); - Button("获取当前内存缓存上限").onClick(() => { + Button($r('app.string.get_cur_memory_limit')).onClick(() => { let result = ImageKnife.getInstance().getCacheUpperLimit(CacheStrategy.Memory); + this.markersLimitText = getContext(this).resourceManager.getStringSync($r('app.string.memory')) if (result) { - this.cacheUpLimit = "当前缓存上限:" + (result/(1024*1024))+"M"; + this.cacheUpLimit = result / (1024 * 1024); + } else { + this.cacheUpLimit = 0; } - }).margin({bottom:8}); - Button("获取当前内存缓存图片数量").onClick(() => { + }).margin({ bottom: 8 }); + Button($r('app.string.get_img_number_of_cache')).onClick(() => { let result = ImageKnife.getInstance().getCurrentPicturesNum(CacheStrategy.Memory); + this.markersNumText = getContext(this).resourceManager.getStringSync($r('app.string.memory')) if (result) { - this.currentNum = "当前缓存图片数量:" + result; + this.currentNum = result; + } else { + this.currentNum = 0; } - }).margin({bottom:8}); - Button("获取当前缓存的大小").onClick(() => { + }).margin({ bottom: 8 }); + Button($r('app.string.get_cur_memory_size')).onClick(() => { let result = ImageKnife.getInstance().getCurrentCacheSize(CacheStrategy.Memory); + this.markersSizeText = getContext(this).resourceManager.getStringSync($r('app.string.memory')) if (result) { - this.currentSize = "当前缓存的大小:" + (result/(1024*1024))+"M"; + this.currentSize = result / (1024 * 1024); + } else { + this.currentSize = 0; } - }).margin({bottom:8}); + }).margin({ bottom: 8 }); - Button("获取当前磁盘缓存上限").onClick(() => { + Button($r('app.string.get_cur_disk_limit')).onClick(() => { let result = ImageKnife.getInstance().getCacheUpperLimit(CacheStrategy.File); + this.markersLimitText = getContext(this).resourceManager.getStringSync($r('app.string.disk')) if (result) { - this.cacheUpLimit = "当前缓存上限:" + (result/(1024*1024))+"M"; + this.cacheUpLimit = result / (1024 * 1024); + } else { + this.cacheUpLimit = 0; } - }).margin({bottom:8}); - Button("获取当前磁盘缓存图片数量").onClick(() => { + }).margin({ bottom: 8 }); + Button($r('app.string.get_img_number_of_disk')).onClick(() => { let result = ImageKnife.getInstance().getCurrentPicturesNum(CacheStrategy.File); + this.markersNumText = getContext(this).resourceManager.getStringSync($r('app.string.disk')) if (result) { - this.currentNum = "当前缓存图片数量:" + result; + this.currentNum = result; + } else { + this.currentNum = 0; } - }).margin({bottom:8}); - Button("获取当前磁盘的大小").onClick(() => { + }).margin({ bottom: 8 }); + Button($r('app.string.get_cur_disk_size')).onClick(() => { let result = ImageKnife.getInstance().getCurrentCacheSize(CacheStrategy.File); + this.markersSizeText = getContext(this).resourceManager.getStringSync($r('app.string.disk')) if (result) { - this.currentSize = "当前缓存的大小:" + (result/(1024*1024))+"M"; + this.currentSize = result / (1024 * 1024); + } else { + this.currentSize = 0; } - }).margin({bottom:8}); + }).margin({ bottom: 8 }); } - .height('100%').width('100%').margin({top:50}) + .height('100%').width('100%').margin({ top: 50 }) } } \ No newline at end of file diff --git a/entry/src/main/ets/pages/TestChangeColorPage.ets b/entry/src/main/ets/pages/TestChangeColorPage.ets index 665386d..2a282ae 100644 --- a/entry/src/main/ets/pages/TestChangeColorPage.ets +++ b/entry/src/main/ets/pages/TestChangeColorPage.ets @@ -19,8 +19,8 @@ import { ImageKnifeComponent, ImageKnifeOption } from '@ohos/imageknife'; @Entry @Component struct TestChangeColorPage { - private imageOne: Resource = $r('app.media.test'); - private imageTwo: Resource = $r('app.media.test'); + private imageOne: Resource = $r('app.media.ic_test_change_color_png'); + private imageTwo: Resource = $r('app.media.ic_test_change_color_png'); @State src: Resource = this.imageOne @State src2: Resource = this.imageTwo @State color: common2D.Color = { @@ -33,9 +33,9 @@ struct TestChangeColorPage { build() { Column() { - Text("点击选择要更改的颜色").margin({ top: 20 }) + Text($r('app.string.select_color_btn')).margin({ top: 20 }) Row() { - Button("红色").backgroundColor(Color.Red).margin(5).onClick(() => { + Button($r('app.string.red')).backgroundColor(Color.Red).margin(5).onClick(() => { this.color = { alpha: 255, red: 255, @@ -43,7 +43,7 @@ struct TestChangeColorPage { blue: 1 }; }) - Button("黄色").backgroundColor(Color.Yellow).margin(5).onClick(() => { + Button($r('app.string.yellow')).backgroundColor(Color.Yellow).margin(5).onClick(() => { this.color = { alpha: 255, red: 255, @@ -51,7 +51,7 @@ struct TestChangeColorPage { blue: 1 }; }) - Button("绿色").backgroundColor(Color.Green).margin(5).onClick(() => { + Button($r('app.string.green')).backgroundColor(Color.Green).margin(5).onClick(() => { this.color = { alpha: 255, red: 1, @@ -59,7 +59,7 @@ struct TestChangeColorPage { blue: 1 }; }) - Button("蓝色").backgroundColor(Color.Blue).margin(5).onClick(() => { + Button($r('app.string.blue')).backgroundColor(Color.Blue).margin(5).onClick(() => { this.color = { alpha: 255, red: 1, @@ -72,14 +72,14 @@ struct TestChangeColorPage { .height(50) .justifyContent(FlexAlign.Center) - Text("原图:").margin({ top: 20 }) + Text($r('app.string.master_image')).margin({ top: 20 }) ImageKnifeComponent({ imageKnifeOption: new ImageKnifeOption({ loadSrc: this.src }) }).width(110).height(110) - Text("点击图片更改图片颜色:").margin({ top: 30 }) + Text($r('app.string.click_img_to_change_color')).margin({ top: 30 }) ImageKnifeComponent({ imageKnifeOption: new ImageKnifeOption({ loadSrc: this.src, @@ -91,18 +91,18 @@ struct TestChangeColorPage { drawing.ColorFilter.createBlendModeColorFilter(this.color, drawing.BlendMode.SRC_IN); }).width(110).height(110) - Text("测试非svg图片变色").margin({ top: 30 }) + Text($r('app.string.test_non_svg_color')).margin({ top: 30 }) ImageKnifeComponent({ imageKnifeOption: new ImageKnifeOption({ - loadSrc: $r('app.media.test'), + loadSrc: $r('app.media.ic_test_change_color_png'), drawingColorFilter: drawing.ColorFilter.createBlendModeColorFilter(this.color, drawing.BlendMode.SRC_IN) }) }).width(110).height(110) - Text("测试svg图片变色").margin({ top: 30 }) + Text($r('app.string.test_svg_color')).margin({ top: 30 }) ImageKnifeComponent({ imageKnifeOption: new ImageKnifeOption({ - loadSrc: $r("app.media.test_svg"), + loadSrc: $r("app.media.ic_test_change_color_svg"), drawingColorFilter: drawing.ColorFilter.createBlendModeColorFilter(this.color, drawing.BlendMode.SRC_IN) }) }).width(110).height(110) diff --git a/entry/src/main/ets/pages/TestLoadCancelListenerPage.ets b/entry/src/main/ets/pages/TestLoadCancelListenerPage.ets index d6d1685..5e97810 100644 --- a/entry/src/main/ets/pages/TestLoadCancelListenerPage.ets +++ b/entry/src/main/ets/pages/TestLoadCancelListenerPage.ets @@ -21,7 +21,7 @@ struct TestLoadCancelListenerPage { @Local currentWidth: number = 200 @Local currentHeight: number = 200 @Local showChild: boolean = true; - @Local text: string = "onLoadCancel回调原因:"; + @Local text: string = ""; @Local ImageKnifeOption: ImageKnifeOption = new ImageKnifeOption({ loadSrc: "", objectFit: ImageFit.Contain, @@ -30,19 +30,19 @@ struct TestLoadCancelListenerPage { build() { Column() { - Text(this.text).margin(20).fontSize(15) - Button('移除组件-网络加载图片') + Text($r('app.string.onLoadCancel_reason', this.text)).margin(20).fontSize(15) + Button($r('app.string.rm_component_of_net')) .margin(20) .onClick(() => { this.ImageKnifeOption = new ImageKnifeOption({ - loadSrc: "https://q7.itc.cn/images01/20240223/ce80229bf9934dff97cdf2ad7be1dcb8.jpeg", + loadSrc: "https://contentcenter-drcn.dbankcdn.cn/pub_1/DevEcoSpace_1_900_9/76/v3/EyF6z4FISpCHhae38eEexw/OtyAiu-zSSevNQYvUdtVmA.jpg", objectFit: ImageFit.Contain, onLoadListener: { onLoadStart: () => { this.showChild = false; }, onLoadCancel: (res) => { - this.text = "onLoadCancel回调成功,网络nLoadCancel回调原因:" + res + this.text = res console.log("TestLoadCancelListenerPage----onLoadCancel> url:" + res) } }, @@ -50,8 +50,9 @@ struct TestLoadCancelListenerPage { }) }) - Button('恢复组件显示') + Button($r('app.string.component_display')) .margin(20).onClick(() => { + this.text = ""; this.showChild = true; this.ImageKnifeOption = new ImageKnifeOption({ loadSrc: "", @@ -59,7 +60,7 @@ struct TestLoadCancelListenerPage { border: { radius: 50 } }) }) - Button('移除组件-本地资源图片') + Button($r('app.string.rm_component_of_local')) .margin(20) .onClick(() => { this.ImageKnifeOption = new ImageKnifeOption({ @@ -70,7 +71,7 @@ struct TestLoadCancelListenerPage { this.showChild = false; }, onLoadCancel: (res) => { - this.text = "onLoadCancel回调成功,本地onLoadCancel回调原因:" + res + this.text = res console.log("TestLoadCancelListenerPage----onLoadCancel> url:" + res) } }, diff --git a/entry/src/main/resources/base/element/string.json b/entry/src/main/resources/base/element/string.json index f982e81..fc1da84 100644 --- a/entry/src/main/resources/base/element/string.json +++ b/entry/src/main/resources/base/element/string.json @@ -367,6 +367,134 @@ { "name": "TIPS", "value": "Please shut down the network first and ensure that there is no cache of images from this network in the test failure scenario locally" + }, + { + "name": "image_format", + "value": "picture format:%s" + }, + { + "name": "image_width", + "value": "image width:%d" + }, + { + "name": "image_height", + "value": "image height:%d" + }, + { + "name": "cur_cache_limit", + "value": "%s:current cache limit:%fM" + }, + { + "name": "cur_cache_image_num", + "value": "%s:current cache image number:%d" + }, + { + "name": "cur_cache_size", + "value": "%s:current cache size:%fM" + }, + { + "name": "load_memory", + "value": "memory loaded picture" + }, + { + "name": "load_disk", + "value": "disk cache loads images" + }, + { + "name": "get_cur_memory_limit", + "value": "gets the current memory cache upper limit" + }, + { + "name": "get_img_number_of_cache", + "value": "gets the number of images cached in memory" + }, + { + "name": "get_cur_memory_size", + "value": "gets the size of the current cache" + }, + { + "name": "get_cur_disk_limit", + "value": "Gets the current disk cache upper limit" + }, + { + "name": "get_img_number_of_disk", + "value": "gets the number of images cached on disk" + }, + { + "name": "get_cur_disk_size", + "value": "gets the size of the current disk" + }, + { + "name": "select_color_btn", + "value": "click to select the color you want to change" + }, + { + "name": "click_img_to_change_color", + "value": "click on the image to change the image color" + }, + { + "name": "test_non_svg_color", + "value": "test non-SVG images for color change" + }, + { + "name": "test_svg_color", + "value": "Test svg picture color change" + }, + { + "name": "red", + "value": "red" + }, + { + "name": "yellow", + "value": "yellow" + }, + { + "name": "green", + "value": "green" + }, + { + "name": "blue", + "value": "blue" + }, + { + "name": "master_image", + "value": "master image:" + }, + { + "name": "rm_component_of_net", + "value": "remove Component - Network load picture" + }, + { + "name": "rm_component_of_local", + "value": "remove Component - Local resource picture" + }, + { + "name": "component_display", + "value": "recovery component display" + }, + { + "name": "onLoadCancel_reason", + "value": "onLoadCancel callback reason:%s" + }, + { + "name": "test_cache_btn", + "value": "test data for in cache" + }, + { + "name": "test_change_color_btn", + "value": "test change color for image" + }, + { + "name": "test_cancel_callback_btn", + "value": "test callback of cancel" + }, + { + "name": "memory", + "value": "Memory" + }, + { + "name": "disk", + "value": "Disk" } ] } \ No newline at end of file diff --git a/entry/src/main/resources/base/media/ic_test_change_color_png.png b/entry/src/main/resources/base/media/ic_test_change_color_png.png new file mode 100644 index 0000000..75f0a56 Binary files /dev/null and b/entry/src/main/resources/base/media/ic_test_change_color_png.png differ diff --git a/entry/src/main/resources/base/media/ic_test_change_color_svg.svg b/entry/src/main/resources/base/media/ic_test_change_color_svg.svg new file mode 100644 index 0000000..39c69c2 --- /dev/null +++ b/entry/src/main/resources/base/media/ic_test_change_color_svg.svg @@ -0,0 +1,14 @@ + + + svg细图标 + + + + + + + + + + + \ No newline at end of file diff --git a/entry/src/main/resources/base/media/test.png b/entry/src/main/resources/base/media/test.png deleted file mode 100644 index b0d65d0..0000000 Binary files a/entry/src/main/resources/base/media/test.png and /dev/null differ diff --git a/entry/src/main/resources/base/media/test_svg.svg b/entry/src/main/resources/base/media/test_svg.svg deleted file mode 100644 index 9910b1d..0000000 --- a/entry/src/main/resources/base/media/test_svg.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - \ No newline at end of file diff --git a/entry/src/main/resources/zh_CN/element/string.json b/entry/src/main/resources/zh_CN/element/string.json index 74fedfe..f727a27 100644 --- a/entry/src/main/resources/zh_CN/element/string.json +++ b/entry/src/main/resources/zh_CN/element/string.json @@ -363,6 +363,134 @@ { "name": "TIPS", "value": "测试失败场景请先关闭网络,并保证本地没有此网络图片的缓存" + }, + { + "name": "image_format", + "value": "图片格式:%s" + }, + { + "name": "image_width", + "value": "图片宽度:%d" + }, + { + "name": "image_height", + "value": "图片高度:%d" + }, + { + "name": "cur_cache_limit", + "value": "%s:当前缓存上限:%fM" + }, + { + "name": "cur_cache_image_num", + "value": "%s:当前缓存图片数量:%d" + }, + { + "name": "cur_cache_size", + "value": "%s:当前缓存的大小:%fM" + }, + { + "name": "load_memory", + "value": "内存加载图片" + }, + { + "name": "load_disk", + "value": "磁盘缓存加载图片" + }, + { + "name": "get_cur_memory_limit", + "value": "获取当前内存缓存上限" + }, + { + "name": "get_img_number_of_cache", + "value": "获取当前内存缓存图片数量" + }, + { + "name": "get_cur_memory_size", + "value": "获取当前缓存的大小" + }, + { + "name": "get_cur_disk_limit", + "value": "获取当前磁盘缓存上限" + }, + { + "name": "get_img_number_of_disk", + "value": "获取当前磁盘缓存图片数量" + }, + { + "name": "get_cur_disk_size", + "value": "获取当前磁盘的大小" + }, + { + "name": "select_color_btn", + "value": "点击选择要更改的颜色" + }, + { + "name": "click_img_to_change_color", + "value": "点击图片更改图片颜色" + }, + { + "name": "test_non_svg_color", + "value": "测试非svg图片变色" + }, + { + "name": "test_svg_color", + "value": "测试svg图片变色" + }, + { + "name": "red", + "value": "红色" + }, + { + "name": "yellow", + "value": "黄色" + }, + { + "name": "green", + "value": "绿色" + }, + { + "name": "blue", + "value": "蓝色" + }, + { + "name": "master_image", + "value": "原图:" + }, + { + "name": "rm_component_of_net", + "value": "移除组件-网络加载图片" + }, + { + "name": "rm_component_of_local", + "value": "移除组件-本地资源图片" + }, + { + "name": "component_display", + "value": "恢复组件显示" + }, + { + "name": "onLoadCancel_reason", + "value": "onLoadCancel回调原因:%s" + }, + { + "name": "test_cache_btn", + "value": "测试缓存数据" + }, + { + "name": "test_change_color_btn", + "value": "测试颜色变换" + }, + { + "name": "test_cancel_callback_btn", + "value": "测试加载取消回调接口" + }, + { + "name": "memory", + "value": "内存" + }, + { + "name": "disk", + "value": "磁盘" } ] } \ No newline at end of file diff --git a/entry/src/ohosTest/ets/test/imageFormatAndSize.test.ets b/entry/src/ohosTest/ets/test/imageFormatAndSize.test.ets index 3faa0a6..fea2a53 100644 --- a/entry/src/ohosTest/ets/test/imageFormatAndSize.test.ets +++ b/entry/src/ohosTest/ets/test/imageFormatAndSize.test.ets @@ -13,7 +13,13 @@ * limitations under the License. */ import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from '@ohos/hypium'; -import { ImageKnifeOption, ImageKnife, ImageKnifeRequest, ImageKnifeRequestSource } from "@ohos/imageknife" +import { + ImageKnifeOption, + ImageKnife, + ImageKnifeRequest, + ImageKnifeRequestSource, + CacheStrategy +} from "@ohos/imageknife" import { common } from '@kit.AbilityKit'; export default function imageFormatAndSize() { @@ -41,16 +47,14 @@ export default function imageFormatAndSize() { let width = 0; let height = 0; let imageFormat: string = ""; - + let url: string = + "https://contentcenter-drcn.dbankcdn.cn/pub_1/DevEcoSpace_1_900_9/ed/v3/KMO4D6D2QGuVOCLX4AhOFA/ef51xAaLQuK7BsnuD9abog.jpg" let imageKnifeOption: ImageKnifeOption = new ImageKnifeOption({ - loadSrc: $r('app.media.icon'), + loadSrc: url, }) await new Promise((resolve, reject) => { imageKnifeOption.onLoadListener = { onLoadSuccess: (data, imageknifeData) => { - width = imageknifeData.imageWidth - height = imageknifeData.imageHeight - imageFormat = imageknifeData.type! resolve("") }, onLoadFailed(err) { @@ -70,9 +74,16 @@ export default function imageFormatAndSize() { ) ImageKnife.getInstance().execute(request); }) + let data = await ImageKnife.getInstance() + .getCacheImage(url, CacheStrategy.Memory); + if (data) { + width = data.imageWidth + height = data.imageHeight + imageFormat = data.type! + } expect(width != 0).assertTrue(); expect(height != 0).assertTrue(); expect(imageFormat != "").assertTrue(); }); }); -} +} \ No newline at end of file diff --git a/library/src/main/ets/ImageKnife.ets b/library/src/main/ets/ImageKnife.ets index e91344a..79c9fe6 100644 --- a/library/src/main/ets/ImageKnife.ets +++ b/library/src/main/ets/ImageKnife.ets @@ -314,7 +314,6 @@ export class ImageKnife { if (cacheType == CacheStrategy.Memory) { return (this.memoryCache as MemoryLruCache).maxMemory; } else { - console.log("sss---->isFileCacheInit:"+this.fileCache) if (this.isFileCacheInit()) { return this.fileCache?.maxMemory; } else {