Row中2列图片平分宽度

一、效果

基于官方例子修改,效果如下:

如果不加上Expand,图片的宽度就会导致Row的总宽度大于屏幕的宽度,出现下面的这种情况。

二、代码

在Row容器中,使用Expand让每个子Widget平分父Widget的总宽度(这里就是整个屏幕的总宽度)。代码如下:

 Widget _buildDecoratedImage(int imageIndex) {
    return Container(
      decoration: BoxDecoration(
        border: Border.all(width: 10, color: Colors.black38),
        borderRadius: const BorderRadius.all(const Radius.circular(8)),
     
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一个示例代码。首先,您需要在 `template` 定义一个表格结构,然后使用 `flex` 布局来实现平分行的效果: ```html <template> <view class="table"> <view class="row"> <view class="cell">1-1</view> <view class="cell double">1-2-1</view> <view class="cell double">1-2-2</view> <view class="cell">1-3</view> </view> <view class="row"> <view class="cell">2-1</view> <view class="cell double">2-2-1</view> <view class="cell double">2-2-2</view> <view class="cell">2-3</view> </view> <view class="row"> <view class="cell">3-1</view> <view class="cell double">3-2-1</view> <view class="cell double">3-2-2</view> <view class="cell">3-3</view> </view> </view> </template> <style> .table { display: flex; flex-direction: column; align-items: stretch; } .row { display: flex; flex-direction: row; align-items: stretch; } .cell { flex: 1; height: 50rpx; border: 1rpx solid #ccc; text-align: center; line-height: 50rpx; } .double { flex: 2; display: flex; flex-direction: column; } .double .cell { flex: 1; } </style> ``` 在上面的代码,我们通过 `flex` 布局实现了表格的结构,并使用 `.double` 类来实现平分行的效果。具体来说,我们将第二和第三的单元格设为 `.double` 类,这样它们就会占据两倍的宽度,然后再将它们内部的单元格设为 `flex: 1`,这样它们就会平分行。 您可以在 `style` 自定义表格的样式,包括单元格的宽度、高度、边框等。另外,如果您需要动态生成表格,可以使用 `v-for` 指令来遍历数据并生成对应的单元格。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值