小程序适配底部元素适配iphoneX样式

 没有适配时的样式,想要适配只需要得到设备的安全距离,然后动态计算一下就好了

globalData: {
    //全局变量,底部安全距离
    tbBottom: 0,
}

onLaunch: function () {
    //获取底边高度
    this.globalData.tbBottom = wxSync.screenHeight - wxSync.safeArea.bottom;
}

在app.vue页面定义全局变量方便使用,在onLunch时获取底边高度,onlaunch:当小程序初始化完成时,会触发 onLaunch(全局只触发一次)

<view class="btn_box" :style="{ '--height': `${tbBottom}px` }">
    <van-button type="info" size="large" color="#3C9CFF" @click="addSell">添加销售品        
    </van-button>
</view>
data() {
      return {
          tbBottom: getApp().globalData.tbBottom,
      }
},
.btn_box {
   width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    padding-bottom: var(--height);
    // background: #3C9CFF;
}

在我们需要用到的界面从全局变量中拿到底边高度,然后再标签上用动态样式设置一个变量'--height',值就是我们的底边高度,因为button是使用组件写的,担心不生效所以再外面套了一层盒子,大家可以尝试直接在元素上写。

 这是添加了动态padding的效果,可以看出高出的一截可以看到下面的界面,所以要给我的盒子加上一个与button颜色一致的背景色。但是如果直接在要改变的元素上做操作的话就不用了。所以视情况看样式写给哪个元素。

最后实现效果

普通机型

iphone X

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
苹果底部小横条(iPhone X 及以上机型的底部指示条)的高度为 34px,它会遮挡小程序底部部分内容,因此需要进行适配。 在支付宝小程序中,可以使用 `safe-area-view` 组件来适配苹果底部小横条。`safe-area-view` 组件可以根据设备的实际情况自动调整布局,使得小程序内容不被遮挡。 具体实现步骤如下: 1. 在需要适配的页面的 `.axml` 文件中,使用 `safe-area-view` 标签包裹需要适配的内容。 2. 在 `safe-area-view` 标签中设置 `padding-bottom` 属性,属性值为 `34rpx`,表示底部留出 34px 的安全区域。 下面是一个示例代码: ```html <safe-area-view style="background-color: white;"> <view style="height: 100vh; padding-bottom: 34rpx;"> <!-- 需要适配的内容 --> </view> </safe-area-view> ``` 注意:使用 `safe-area-view` 组件进行适配时,需要将适配的内容放在 `safe-area-view` 标签内,而不能直接放在页面根节点下。另外,需要注意 `padding-bottom` 的值,不同的设备可能需要设置不同的值来适配底部小横条。 另外,如果小程序中有固定在底部的 tabbar,也需要进行适配,可以在 `.axml` 文件中使用 `tabbar` 标签,并设置 `safe` 属性为 `true`,表示在底部留出安全区域。 下面是一个示例代码: ```html <tabbar safe="true"> <tabbar-item text="首页" icon="home" url="/pages/index/index"></tabbar-item> <tabbar-item text="分类" icon="category" url="/pages/category/category"></tabbar-item> <tabbar-item text="购物车" icon="cart" url="/pages/cart/cart"></tabbar-item> <tabbar-item text="我的" icon="user" url="/pages/user/user"></tabbar-item> </tabbar> ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值