- app.js 通过 wx.getSystemInfoSync 获取 statusBarHeight 存入 globalData
- 所有12个自定义导航页面的 JS 读取 statusBarHeight
- WXML 通过 style="padding-top: {{statusBarHeight + 24}}px" 动态适配
- 普通手机和灵动岛手机都能正确显示
41 行
2.0 KiB
Plaintext
41 行
2.0 KiB
Plaintext
<view class="page">
|
|
<view class="page-header page-header-pink" style="padding-top: {{statusBarHeight + 24}}px;">
|
|
<view class="page-header-title">护理设置</view>
|
|
<view class="page-header-subtitle">选择模式和区域</view>
|
|
</view>
|
|
|
|
<view class="page-content">
|
|
<view class="page-title">选择护理模式</view>
|
|
|
|
<view class="mode-selector">
|
|
<view class="mode-option {{selectedMode === 0 ? 'active' : ''}}" bindtap="onSelectMode" data-value="0">
|
|
<text class="mode-icon">🔄</text>
|
|
<view class="mode-label">普通模式</view>
|
|
<view class="mode-sub">6色循环</view>
|
|
</view>
|
|
<view class="mode-option {{selectedMode === 1 ? 'active' : ''}} {{subExpired ? 'locked' : ''}}" bindtap="onSelectMode" data-value="1">
|
|
<text class="mode-icon">✨</text>
|
|
<view class="mode-label">智能模式</view>
|
|
<view class="mode-sub" wx:if="{{!subExpired}}">剩余{{subDays}}天</view>
|
|
<view class="mode-sub" wx:else>订阅解锁</view>
|
|
</view>
|
|
</view>
|
|
|
|
<view class="page-title" style="font-size:28rpx;">选择护理区域</view>
|
|
|
|
<view class="face-map">
|
|
<view class="face-region forehead {{regions[2].checked ? 'active' : ''}}" bindtap="onToggleRegion" data-idx="2">额头</view>
|
|
<view class="face-region left-cheek {{regions[0].checked ? 'active' : ''}}" bindtap="onToggleRegion" data-idx="0">左脸</view>
|
|
<view class="face-region right-cheek {{regions[1].checked ? 'active' : ''}}" bindtap="onToggleRegion" data-idx="1">右脸</view>
|
|
<view class="face-region nose {{regions[4].checked ? 'active' : ''}}" bindtap="onToggleRegion" data-idx="4">鼻唇</view>
|
|
<view class="face-region chin {{regions[3].checked ? 'active' : ''}}" bindtap="onToggleRegion" data-idx="3">下巴</view>
|
|
</view>
|
|
|
|
<button class="btn-primary" bindtap="onStart" disabled="{{submitting}}" loading="{{submitting}}">
|
|
开始护理
|
|
</button>
|
|
|
|
<view class="error-text" wx:if="{{error}}">{{error}}</view>
|
|
</view>
|
|
</view>
|