```
feat: 添加拍药盒功能和语音直达入口 - 实现拍药盒扫描流程,支持本地OCR识别药品信息 - 在日记页面添加拍药盒和记症状的三选一入口 - 优化按钮点击区域,确保符合苹果HIG最小命中区标准 - 添加用药记录到时间线的独立分类显示 - 实现长按+号语音直达功能,支持语音意图分类跳转 - 更新项目配置文件,启用代码分析和死代码剥离选项 - 增加多项本地化字符串支持新功能 ```
This commit is contained in:
@@ -32,8 +32,9 @@ struct QuickRegionCaptureFlow: View {
|
||||
private var content: some View {
|
||||
switch phase {
|
||||
case .idle:
|
||||
// 不再整体 ignoresSafeArea:相机/框选内部已各自做全屏黑底,
|
||||
// 这里再忽略安全区会把「取消」顶进灵动岛,几乎点不到。
|
||||
captureEntry
|
||||
.ignoresSafeArea()
|
||||
|
||||
case .adjust(let image):
|
||||
RegionAdjustView(
|
||||
@@ -45,7 +46,6 @@ struct QuickRegionCaptureFlow: View {
|
||||
onRetake: { phase = .idle },
|
||||
onCancel: { onClose() }
|
||||
)
|
||||
.ignoresSafeArea()
|
||||
|
||||
case .confirm(let image, let items, let warning):
|
||||
NavigationStack {
|
||||
|
||||
@@ -50,7 +50,11 @@ struct RegionAdjustView: View {
|
||||
Text("取消")
|
||||
.font(.tjScaled( 16, weight: .medium))
|
||||
.foregroundStyle(.white)
|
||||
.padding(.horizontal, 12)
|
||||
.frame(minWidth: 60, minHeight: 44) // HIG 最小命中区,命中整块而非文字
|
||||
.contentShape(Rectangle())
|
||||
}
|
||||
.buttonStyle(.plain)
|
||||
Spacer()
|
||||
Text("框住异常指标")
|
||||
.font(.tjScaled( 16, weight: .semibold))
|
||||
@@ -63,10 +67,14 @@ struct RegionAdjustView: View {
|
||||
Text("重拍")
|
||||
.font(.tjScaled( 16, weight: .medium))
|
||||
.foregroundStyle(.white)
|
||||
.padding(.horizontal, 12)
|
||||
.frame(minWidth: 60, minHeight: 44)
|
||||
.contentShape(Rectangle())
|
||||
}
|
||||
.buttonStyle(.plain)
|
||||
}
|
||||
.padding(.horizontal, 18)
|
||||
.padding(.vertical, 12)
|
||||
.padding(.horizontal, 8)
|
||||
.padding(.vertical, 4)
|
||||
.background(Color.black)
|
||||
}
|
||||
|
||||
|
||||
@@ -49,13 +49,15 @@ struct SingleShotCameraView: View {
|
||||
Text("取消")
|
||||
.font(.tjScaled( 16, weight: .medium))
|
||||
.foregroundStyle(.white)
|
||||
.padding(.horizontal, 14)
|
||||
.padding(.vertical, 8)
|
||||
.padding(.horizontal, 18)
|
||||
.frame(minHeight: 44) // 苹果 HIG 最小命中区
|
||||
.background(Capsule().fill(.black.opacity(0.35)))
|
||||
.contentShape(Capsule())
|
||||
}
|
||||
.buttonStyle(.plain)
|
||||
Spacer()
|
||||
}
|
||||
.padding(.horizontal, 18)
|
||||
.padding(.horizontal, 16)
|
||||
.padding(.top, 8)
|
||||
|
||||
Spacer()
|
||||
|
||||
Reference in New Issue
Block a user