소스 검색

扫一扫页面

master
徐勤民 3 주 전
부모
커밋
e271052ddd
2개의 변경된 파일52개의 추가작업 그리고 1개의 파일을 삭제
  1. +2
    -1
      app/src/main/ets/pages/Index.ets
  2. +50
    -0
      app/src/main/ets/pages/sign/ScanHome.ets

+ 2
- 1
app/src/main/ets/pages/Index.ets 파일 보기

@@ -3,6 +3,7 @@ import { SettingView } from './setting/SettingView'
import { RouterBuilder } from '../router/RouterBuilder'
import { BJCASDK } from '@szyx/sdk_ywx/Index'
import { SignHome } from './sign/SignHome'
import { ScanHome } from './sign/ScanHome'

@Entry
@Component
@@ -41,7 +42,7 @@ struct Index {
.tabBar(this.tabBuilder('签名', 1, $r('app.media.icon_sign_selected'), $r('app.media.icon_sign_normal')))

TabContent() {
Text('1.0.1版本上线').fontSize(30)
ScanHome()
}
.tabBar(this.tabBuilder('二维码', 2, $r('app.media.icon_code_selected'), $r('app.media.icon_code_normal')))



+ 50
- 0
app/src/main/ets/pages/sign/ScanHome.ets 파일 보기

@@ -0,0 +1,50 @@
import promptAction from '@ohos.promptAction';
import { scanBarcode, scanCore } from '@kit.ScanKit';
import { BusinessError } from '@kit.BasicServicesKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

@Component
@Preview
export struct ScanHome {
private oldTime = 0

build() {
NavDestination() {
Column() {
Button('扫一扫', { stateEffect: true, type: ButtonType.Normal, buttonStyle: ButtonStyleMode.NORMAL })
.width('40%')
.fontColor('#333333')
.height(40)
.onClick(() => {
// 定义扫码参数options
let options: scanBarcode.ScanOptions =
{ scanTypes: [scanCore.ScanType.ALL], enableMultiMode: true, enableAlbum: true };
scanBarcode.startScanForResult(getContext(this), options).then((result: scanBarcode.ScanResult) => {
hilog.info(0x0001, '[Scan Sample]',
`Succeeded in getting ScanResult by promise with options, result is ${JSON.stringify(result)}`);
}).catch((error: BusinessError) => {
hilog.error(0x0001, '[Scan Sample]',
`Failed to get ScanResult by promise with options. Code: ${error.code}, message: ${error.message}`);
})
})
}
.width('100%')
.height("100%")
.padding(20)
.backgroundColor("#ffffff")
}.padding({ left: 15, right: 15 }).hideTitleBar(true)
.onBackPressed(() => {
const currentTime = new Date().getTime()

if (currentTime - this.oldTime > 1500) {
promptAction.showToast({
message: '双击退出',
duration: 2000
});
this.oldTime = currentTime
return false
}
return true
})
}
}

불러오는 중...
취소
저장