当前位置:首页 > uni-app

uniapp四宫格布局

2026-02-06 17:23:21uni-app

四宫格布局实现方法

在UniApp中实现四宫格布局,可以通过flex布局或grid布局完成。以下是两种常见的方法:

方法一:使用Flex布局

uniapp四宫格布局

<template>
  <view class="container">
    <view class="row" v-for="(row, rowIndex) in gridData" :key="rowIndex">
      <view class="item" v-for="(item, colIndex) in row" :key="colIndex">
        {{ item }}
      </view>
    </view>
  </view>
</template>

<style>
.container {
  padding: 10px;
}
.row {
  display: flex;
  margin-bottom: 10px;
}
.item {
  flex: 1;
  height: 100px;
  margin: 0 5px;
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
}
</style>

<script>
export default {
  data() {
    return {
      gridData: [
        ['1', '2'],
        ['3', '4']
      ]
    }
  }
}
</script>

方法二:使用Grid布局

<template>
  <view class="grid-container">
    <view class="grid-item" v-for="(item, index) in items" :key="index">
      {{ item }}
    </view>
  </view>
</template>

<style>
.grid-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 10px;
  padding: 10px;
}
.grid-item {
  height: 100px;
  background-color: #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: center;
}
</style>

<script>
export default {
  data() {
    return {
      items: ['1', '2', '3', '4']
    }
  }
}
</script>

动态调整间距

可以通过修改CSS中的grid-gap或margin属性来调整格子间距:

uniapp四宫格布局

/* Flex布局调整间距 */
.item {
  margin: 0 10px 10px 10px;
}

/* Grid布局调整间距 */
.grid-container {
  grid-gap: 15px;
}

响应式设计

添加媒体查询使布局在不同屏幕尺寸下自适应:

@media (min-width: 768px) {
  .grid-container {
    grid-template-columns: repeat(4, 1fr);
  }
}

点击事件处理

为每个格子添加点击事件:

<view class="grid-item" v-for="(item, index) in items" :key="index" @click="handleClick(index)">
  {{ item }}
</view>

<script>
methods: {
  handleClick(index) {
    uni.showToast({
      title: `点击了第${index + 1}个格子`,
      icon: 'none'
    })
  }
}
</script>

标签: 格布uniapp
分享给朋友:

相关文章

uniapp斑马

uniapp斑马

uniapp 斑马相关问题解答 uniapp 斑马打印机连接与使用 uniapp 支持通过蓝牙或网络连接斑马打印机,需要借助原生插件或第三方 SDK。以下为常见方法: 蓝牙连接方式 安装 uni-…

uniapp 壁纸

uniapp 壁纸

使用 Uniapp 开发壁纸应用的方法 实现壁纸展示与切换功能 在 Uniapp 中,可通过 swiper 组件实现壁纸轮播展示。结合 image 组件加载本地或网络壁纸资源,动态绑定 src 属性实…

uniapp yuv

uniapp yuv

YUV 格式在 UniApp 中的应用 在 UniApp 中处理 YUV 格式数据通常涉及视频编解码、图像处理或摄像头数据采集。YUV 是一种颜色编码系统,常用于视频传输和图像处理,与 RGB 格式相…

甜uniapp

甜uniapp

甜uniapp的定义 甜uniapp并非官方术语,可能是对uniapp开发中“高效、便捷、愉悦”体验的形容,或特定场景下的优化方案。通常指通过技巧、插件或架构设计提升uniapp开发效率和用户体验。…

uniapp弹出选择

uniapp弹出选择

实现方式一:使用uni.showActionSheet 在UniApp中,可以通过uni.showActionSheet实现底部弹出的选择菜单。该方法支持自定义选项列表和回调处理。 代码示例:…

uniapp定位描述

uniapp定位描述

uniapp定位功能实现 uniapp提供了多种定位方式,包括H5、小程序和App端的定位功能。通过uni.getLocation方法可以获取设备当前位置信息。 基本定位方法 使用uni.getLo…