ImageKnife/entry/src/main/ets/pages/testImageKnifeRouter2.ets

55 lines
1.5 KiB
Plaintext

/*
* Copyright (C) 2023 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 { ImageKnifeComponent } from '@ohos/libraryimageknife'
import router from '@ohos.router'
interface ParamsType {
url: string
}
@Entry
@Component
struct TestImageKnifeRouter {
@State url: string = ""
aboutToAppear() {
this.url = (router.getParams() as ParamsType).url
}
build() {
Column() {
ImageKnifeComponent({
imageKnifeOption: {
loadSrc: this.url,
placeholderSrc: $r('app.media.icon_loading'),
errorholderSrc: $r('app.media.icon_failed'),
onClick: () => {
router.back()
}
}
}).width("100%").height(600)
.sharedTransition(this.url, {
duration: 500,
curve: Curve.Linear,
type: SharedTransitionEffectType.Exchange
})
}.width("100%").height("100%")
}
pageTransition() {
PageTransitionEnter({ duration: 0 })
PageTransitionExit({ duration: 0 })
}
}