swift ui 布局 ——Stack(HStack、VStack、ZStack)

一、HStack 水平布局

将其子视图排列在水平线上

import Foundation
import SwiftUI
struct MyView: View {var body: some View {HStack{Text("text")Image("yuyin").resizable().frame(width: 102,height: 80)}}
}

默认子视图是水平中心对齐的,可添加alignment  修改位置,alignmet 的值有 bottom   top  center等,可自己查看api

二、VStack 垂直布局

将其子视图排列在垂直线上

import Foundation
import SwiftUI
struct MyView: View {var body: some View {VStack(alignment: .trailing){Image("yuyin").resizable().frame(width: 152,height: 80)Image("yuyin").resizable().frame(width: 102,height: 80)}}
}

默认子视图是垂直中心中心对齐的,可添加alignment  修改位置,alignmet 的值有 leading   trailing  center等

三、ZStack  覆盖子视图

用于覆盖子视图,子视图会重叠在一起 alignmet 的值有 leading   trailing  center topLeading bottomLeading等

三、Spacer() 填充空间

我们在使用stack类控件布局时会发现,所有视图都将在屏幕人正中央,如果想靠上、靠左要怎么办呢? 我们可以使用 Spacer()

Spacer()会为了填满空间改变尺寸把其他视图“挤走”,如VStack视图中有Text和Image两个视图。我想要它靠底部,就可以在两个视图上面加一个Spacer()填充空间。效果如下


 水平布局时想要两个视图分别靠在两边可以在中间加一个Spacer()。如下

组合使用

更多复杂布局等你探索

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/155326.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件测试学习(一)基础概念、实质、说明书测试、分类、动态黑盒测试

软件测试概念、背景 软件无处不在。然而,软件是人写的一所以不完美。 世界上有完美的软件吗?NO 世界上没有完美的软件。所有软件都可能存在缺陷、错误或漏洞,无论是操作系统、应用程序、游戏还是其他类型的软件。这些问题可能会导致功能问题…

【高等数学】极限(上)(最全万字详解)

文章目录 1、数列的极限1.1、数列极限的定义1.2、为什么收敛数列极限是唯一的?1.3、为什么收敛数列是有界的?1.4、数列极限的保号性1.4.1、极限保数列值1.4.2、数列值保极限值 1.5、收敛数列与其子列之间的关系 2、函数极限概念2.1、函数极限的定义2.1.1…

tomcat服务安装步骤以及详细配置教程

tomcat服务安装步骤以及详细配置教程 文章目录 tomcat服务安装步骤以及详细配置教程1.简介2.优缺点优点:缺点: 3.工作原理4.工作流程5.实战(tomcat项目部署)5.1.java环境安装5.2.拉取tomcat软件包5.3.解压部署5.4.启动tomcat服务5…

conda: error: argument COMMAND: invalid choice: ‘activate‘

参考:https://github.com/conda/conda/issues/13022 输入后重启terminal即可

git push错误->Error: src refspec master does not match any

参考:https://blog.csdn.net/weixin_40908748/article/details/128574907 问题描述:在执行命令 git push origin master 时报错->Error: src refspec master does not match any 问题分析:在网上查找解决方法,大部分人说是暂存区没有文件…

zsh: command not found: conda问题解决

参考:https://zhuanlan.zhihu.com/p/158703094 一、问题介绍与环境介绍 系统为macOS Catalina 10.15.4 所用终端为zsh 安装了oh-my-zsh之后conda命令在终端中不可用。 二、原因分析 终端中zsh的可访问的程序一般放在/bin, /usr/bin, /usr/local/bin,/bin目录下&…

阿里云上了新闻联播

我是卢松松,点点上面的头像,欢迎关注我哦! 阿里新任的CEO吴泳铭上央视新闻联播了! 在昨天的新闻联播里,出席科技座谈会,有一个特别镜头,出现了阿里新任CEO吴泳铭的镜头。 这个信号意义明显,我…

L14D6内核模块编译方法

一、内核模块基础代码解析 一个内核模块代码错误仍然会导致的内核崩溃。 GPL协议:开源规定,使用内核一些函数需要 1、单内核的缺点 单内核扩展性差的缺点减小内核镜像文件体积,一定程度上节省内存资源提高开发效率不能彻底解决稳定性低的缺…

如何在 Keras 中开发具有注意力的编码器-解码器模型

link 【翻译自 : How to Develop an Encoder-Decoder Model with Attention in Keras 】 【说明:Jason Brownlee PhD大神的文章个人很喜欢,所以闲暇时间里会做一点翻译和学习实践的工作,这里是相应工作的实践记录,…

Vue-1.9工程化开发和脚手架

开发Vue的两种方式: 1.核心包传统开发模式:基于html/css/js文件,直接引入核心包,开发Vue 2.工程化开发模式:基于构建工具(例如:webpack)的环境中开发Vue 问题: 1&…

排序算法-选择排序法(SelectionSort)

排序算法-选择排序法(SelectionSort) 1、说明 选择排序法也是枚举法的应用,就是反复从未排序的数列中取出最小的元素,加入另一个数列中,最后的结果即为已排序的数列。选择排序法可使用两种方式排序,即在所…

XML是不是主要用做配置文件?

2023年10月11日,周三下午 这几天发现tomcat的配置文件主要是用XML文件来写的, 于是就有了这个问题。 是的,XML非常适合用来做配置文件。 XML作为配置文件的主要优点: 可读性强。XML使用标签结构组织数据,内容清晰易懂。跨语言和跨平台。XML作为纯文本…

Fisher辨别分析

问题要求 在UCI数据集上的Iris和Sonar数据上验证算法的有效性。训练和测试样本有三种方式(三选一)进行划分: (一) 将数据随机分训练和测试,多次平均求结果 (二)K折交叉验证 &…

vscode 资源管理器移动到右边

目录 vscode 资源管理器移动到右边 vscode 资源管理器移动到右边 点击 文件》首选项》设置》工作台》外观》 找到这个配置下拉选择左右

排序算法-插入排序法(InsertSort)

排序算法-插入排序法(InsertSort) 1、说明 插入排序法是将数组中的元素逐一与已排序好的数据进行比较,先将前两个元素排序好,再将第三个元素插入适当的位置,也就是说这三个元素仍然是已排序好的,接着将第…

Rust入门基础

文章目录 Rust相关介绍为什么要用Rust?Rust的用户和案例 开发环境准备安装Rust更新与卸载Rust开发工具 Hello World程序编写Rust程序编译与运行Rust程序 Cargo工具Cargo创建项目Cargo构建项目Cargo构建并运行项目Cargo检查项目Cargo为发布构建项目 Rust相关介绍 为…

Linux查看本机IP地址

Linux查看本机IP地址 命令 ipconfig可能会遇到的问题 Command ‘ifconfig’ not found, but can be installed with: Command ifconfig not found, but can be installed with:sudo apt install net-tools解决办法 安装net-tools再执行ipconfig 安装网络工具 sudo apt i…

Rust 中的 Pin UnPin Async Await 实现机制

原文地址 为了保证概念的严谨性,翻译时保留了英文原文。 In this post, we explore cooperative multitasking and the async/await feature of Rust. We take a detailed look at how async/await works in Rust, including the design of the Future trait, the…

关于网络协议的若干问题(二)

1、网络号、IP 地址、子网掩码和广播地址的先后关系是什么? 答:当在一个数据中心或者一个办公室规划一个网络的时候,首先是网络管理员规划网段,一般是根据将来要容纳的机器数量来规划,一旦定了,以后就不好…

cpp文件操作

文件操作 数据流 在cpp中,流(stream)是一个抽象概念,用于描述如何从一个位置到又一个位置传输数据。流主要用于I/O操作。 数据流包括两大类:1. 输入流(istream):数据从某个源流入程序, 2. 输出流(ostrea…