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.mzph.cn/news/105985.shtml

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

相关文章

python+django高校教室资源预约管理系统lqg8u

技术栈 后端:pythondjango 前端:vueCSSJavaScriptjQueryelementui 开发语言:Python 框架:django/flask Python版本:python3.7.7 数据库:mysql 数据库工具:Navicat 开发软件:PyChar…

pyqt5移动鼠标时显示鼠标坐标

问题: 只有按住鼠标左键或者右键移动的时候才会获取坐标值,即使对QLabel控件使用setMouseTracking(True)也无法解决。 解决方法: 在初始化构造函数中加入 self.setMouseTracking(True) self.centralwidget.setMouseTracking(True) 并且对…

7种设计模式

1. 工厂模式 优点:封装了对象的创建过程,降低了耦合性,提供了灵活性和可扩展性。 缺点:增加了代码的复杂性,需要创建工厂类。 适用场景:当需要根据不同条件创建不同对象时,或者需要隐藏对象创建…

Go语言入门心法(五): 函数

一: go语言函数认知 Go语言入门心法(一): 基础语法 Go语言入门心法(二): 结构体 Go语言入门心法(三): 接口 忙着去耍帅,后期补上..........

Epoch和episodes的区别

“Epoch” 和 “episode” 是两个不同的概念,通常在不同领域中使用。 Epoch(周期): Epoch 是一个在机器学习和深度学习中常用的术语,通常用于表示训练数据集中的一个完整遍历。在每个 epoch 中,整个训练数据…

[题] 差分矩阵 #差分

题目 差分矩阵 题解 只有一个操作: void insert(int x1, int y1, int x2, int y2, int c){b[x1][y1] c;b[x2 1][y1] - c;b[x1][y2 1] - c;b[x2 1][y2 1] c; }利用差分的思想,扩展到二维上。 insert函数作用是将矩阵之内的数全部加上c,…

集合的进阶

不可变集合 创建不可变的集合 在创建了之后集合的长度内容都不可以变化 静态集合的创建在list ,set ,map接口当中都可以获取不可变集合 方法名称说明static list of(E …elements)创建一个具有指定元素集合list集合对象staticlist of(E…elements)创…

Java8新特性实战

Java 8 作为一个里程碑式的版本,其中所做出的改变,在许多方面比Java历史上任何一次改变都深远。Java为什么会一直在改变,因为编程语言就像生态系统一样,更优秀语言的出现,落后的语言就会被取代,除非它们不断…

Ionic4 生命周期钩子函数和angular生命周期钩子函数介绍

1、Ionic4 生命周期钩子函数 Ionic 4(以及之后的 Ionic 版本)使用了 Angular 生命周期钩子,因为 Ionic 是基于 Angular 构建的。因此,Ionic 4 中的生命周期与 Angular 组件生命周期非常相似。以下是一些常见的 Ionic 4 生命周期钩…

掌握Python爬虫实现网站关键词扩展提升曝光率

目录 一、关键词优化的重要性 二、关键词优化的基本方法 1、选择与网站内容相关的关键词 2、控制关键词的密度和分布 3、关键词的层次布局 三、Python爬虫实现网站关键词扩展 1、确定目标网站 2、分析目标网站的HTML结构 3、编写Python爬虫代码 4、分析爬取到的关键词…

BSPHP 未授权访问 信息泄露

漏洞描述 BSPHP 存在未授权访问 泄露用户 IP 和 账户名信息 漏洞复现 访问url: 构造payload访问: /admin/index.php?madmin&clog&atable_json&jsonget&soso_ok1&tuser_login_log&page1&limit10&bsphptime16004073…

25栈和队列-理解栈和队列

目录 LeetCode之路——232. 用栈实现队列 分析: LeetCode之路——225. 用队列实现栈 分析: 栈(Stack)和队列(Queue)是两种基本的数据结构,它们在计算机科学中用于不同的目的。以下是它们的定…

P4491 [HAOI2018] 染色

传送门:洛谷 解题思路: 写本题需要知道一个前置知识: 假设恰好选 k k k个条件的方案数为 f ( k ) f(k) f(k);先钦定选 k k k个条件,其他条件无所谓的方案数为 g ( k ) g(k) g(k) 那么存在这样的一个关系: g ( k ) ∑ i k n C i k f ( i ) g(k)\sum_{ik}^nC_{i}^kf(i) g(k)…

【windows下docker安装rocketMQ】

namesrv和broker安装就不说了,见如下博客 https://blog.csdn.net/Wonderful1025/article/details/107244434/ 安装rocketMQ-console docker run -d -e "JAVA_OPTS-Drocketmq.config.namesrvAddr192.168.65.2:9876 -Drocketmq.config.isVIPChannelfalse"…

12.SpringBoot之RestTemplate的使用

SpringBoot之RestTemplate的使用 初识RestTemplate RestTemplate是Spring框架提供用于调用Rest接口的一个应用,它简化了与http服务通信方式。RestTemplate统一Restfull调用的标准,封装HTTP链接,只要需提供URL及返回值类型即可完成调用。相比…

Spark中的Driver、Executor、Stage、TaskSet、DAGScheduler等介绍

工作流程: Driver 创建 SparkSession 并将应用程序转化为执行计划,将作业划分为多个 Stage,并创建相应的 TaskSet。Driver 将 TaskSet 发送给 TaskScheduler 进行调度和执行。TaskScheduler 根据资源情况将任务分发给可用的 Executor 进程执…

DAE转换GLB格式

1、DAE模型介绍 DAEA(Deep Attentive and Ensemble Autoencoder)模型是一种用于无监督学习的深度学习模型,由华为公司提出。DAEA模型结合了自编码器和深度注意力机制,能够对高维数据进行降维和特征提取,并且在处理大规…

博图数值按照特定格式(“T000000”)转换成字符串

一、前言 1.string to dint物流输送线往往需要通过扫码器读取托盘条码,一维码或者二维码​。 读取的数据需要解析才能正常使用。两种方式读取的数据直接是字符串,但当设备与上位机通信时, 字符串数据量太大,故可以通过算法转换成…

Ceph分布式存储的简单介绍与Ceph集群的部署搭建

文章目录 1. 存储的概述1.1 单机存储设备1.1.1 DAS(直接附加存储)1.1.2 NAS(网络附加存储)1.1.3 SAN(存储区域网络) 1.2 单机存储的缺陷1.3 分布式存储(软件定义的存储 SDS)1.4 分布…

unity ugui text 超链接和下划线,支持部分富文本格式

unity版本:2021.3.6f1 局限性: 1.测试发现不能使用 size 富文本标签, 2.同一文本不能设置不同颜色的超链接文本 其它:代码中注释掉使用innerTextColor的地方,可以使用富文本设置超链接颜色, 但是下划线是文本本身颜色 …