首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

iOS开源界面布局库终于破3000star

经过几年的打磨多次的重构,我的iOS开源界面布局库MyLayout的star数量终于在2018年8月6号破3000了!有图为证: ? MyLayout 还有Swift版本TangramKit: ?...UIScrollView或者子类则在线性布局的位置调整后是否调整滚动视图的contentsize,默认是NO //这个属性适合与整个线性布局作为滚动视图的唯一子视图来使用。...默认是NO.如果设置为YES的话则边缘视图的边距不起作用了,而且子视图的weight也不起作用了。而且不是调整自己的大小了 //也就是当垂直方向则所有子视图按顺序排列在中间。...这些布局都是借鉴了目前市面上的iOSandroid以及HTML5中的各种布局框架思想而设计的。至于当时为什么以My开头初衷也是随手这么一写,所以后来开源后还是保持以My开头。...swift版本的TangramKit中得到了有效的解决。

1.8K40
您找到你想要的搜索结果了吗?
是的
没有找到

Ask Apple 2022 与 SwiftUI 有关的问答(下)

因此,如果你正在创建一个视图来显示可滚动的内容,并可能进行选择操作,那么在 iOS macOS 上使用 List 将有最好的体验。...创建从底部开始的滚动视图Q:我如何实现一个在底部对齐的滚动视图,在 macOS 上会不会有糟糕的性能?...A:你最好的选择是使用 ScrollView ScrollViewReader,并在 onAppear 或新内容进来时滚动到最底部的视图。我不建议尝试旋转滚动视图。...将视图功能分散到函数、更小的视图结构以及视图修饰器当中是很好的解决方法。...但这个滚动有两大问题,1、是一个未公开的半成品,有可能会被从 SwiftUI 框架中移除;2、不支持懒加载,即使 Lazy 视图一起使用也会一次性加载全部的视图

14.7K30

MyLayout&TangramKit 的重大升级!

MyLayoutTangramKit是一套基于frame之上的UI界面布局库的OC版本Swift版本。目前最新版本升级为MyLayout1.7.0TangramKit1.4.0。 ?...当一个视图有自己的固有内容尺寸时,就不需要再为视图设置宽度或者高度约束。这也就是为什么一般情况下不对UILabel视图设置宽度高度约束时系统也能正常完成布局。...如果不需要水平滚动则改为将容器视图的宽度等于UIScrollView视图的宽度。通过这样的设置后UIScrollView视图的contentSize将得到自动的计算。...如果不需要水平滚动则不要这样设置,而是改为将容器视图的宽度等于滚动视图的宽度 [B.rightAnchor constraintEqualToAnchor:containerView.rightAnchor...因此如果想使用布局视图的尺寸自适应功能,那么在将布局视图的尺寸设置为wrap后,就可以像使用UILabel那样不用去设置布局视图的宽度约束高度约束了。比如有两个兄弟视图A,B。

2K20

SwiftUI案例:3D旋转图片播放器

) 创建View视图 在工作区的项目文件夹下创建名为 View 的 Group 并在其中依次创建 Home.swift CarouseBodyView.swift ScrollViewOffsetModifier.swift...视图文件,其功能如下: Home.swift: 主视图,用来控制文字布局与图片布局; CarouseBodyView.swift: 控件视图,用来具体实现文字部分与图片部分; ScrollViewOffsetModifier.swift...: 滚动偏量视图,用来设置3D滚动效果; 视图的实现 主视图 Home.swift 大致定义整个屏幕视图的布局与容器接口。...CarouseBodyView.swift 通过视图容器的嵌套布局,实现 Home.swift 中组件的文本与图片的具体内容。...CarouseBodyView_Previews: PreviewProvider { static var previews: some View { ContentView() } } 滚动偏量视图

2.3K30

Ios常用第三方动画框架(三)

用于简化实现各种类型的旋转木马(分页滚动视图),无限轮播 ,iOS开发之多图片无缝滚动组件封装与使用。 KIPageView - 无限循环PageView,横向TableView,无限轮播。...KYAnimatedPageControl - 除了滚动视图时PageControl会以动画的形式一起移动,点击目标页还可快速定位。支持两种样式:粘性小球旋转方块。...KDIntroView - swift 动态介绍视图框架及演示。另外两个相似的类库是 RazzleDazzle Presentation,择需使用。...STLBGVideo - STLBGVideo让您的视图控制器的自定义backgroundvideo,实现说明1、实现说明2。 Advance.swift - 简单易用、功能强大的动画框架库。...NumberMorphView.swift - 可爱的数字补间(变身)动画类库。 DisplaySwitcher.swift - 两个集合视图在不同布局(平铺列表)间平滑切换。

9K30

WWDC 23 ,SwiftUI 5 SwiftData 的初印象

全新的数据流声明注入方式 利用 Swift 5.9 的新特性,对于引用类型的 Source of truth,只需使用 @Observable 进行标注,视图将对数据源的变化以属性为粒度进行响应。...大幅改善了 ScrollView 的控制力 本次升级中,为 ScrollView 带来了新的动态滚动定位系统( 不依赖 ScrollViewReader 显式的 id 声明)、一次性的定位系统( 在视图进入后...,直接定位到滚动视图的特定位置,只能使用一次 )、全新的滚动条控制( 闪烁 )、可自定义行视图滚动区域的顶端显示区域的显示状态( 例如可用其实现类似 watchOS 中的滚动到顶端子视图缩小的视觉效果...)、支持分页滚动( 开发者长期盼望的 )、自定义滚动内容的缩进、为滚动内容(非滚动容器)添加安全区域等众多功能。...SwiftData 本质上就是一套官方推出的,基于 Swift 5.9 新功能实现的 Core Data 的 Swift 封装库。

1.1K20

WWDC 23 ,SwiftUI 5 SwiftData 的初印象

全新的数据流声明注入方式 利用 Swift 5.9 的新特性,对于引用类型的 Source of truth,只需使用 @Observable 进行标注,视图将对数据源的变化以属性为粒度进行响应。...大幅改善了 ScrollView 的控制力 本次升级中,为 ScrollView 带来了新的动态滚动定位系统( 不依赖 ScrollViewReader 显式的 id 声明)、一次性的定位系统( 在视图进入后...,直接定位到滚动视图的特定位置,只能使用一次 )、全新的滚动条控制( 闪烁 )、可自定义行视图滚动区域的顶端显示区域的显示状态( 例如可用其实现类似 watchOS 中的滚动到顶端子视图缩小的视觉效果...)、支持分页滚动( 开发者长期盼望的 )、自定义滚动内容的缩进、为滚动内容(非滚动容器)添加安全区域等众多功能。...SwiftData 本质上就是一套官方推出的,基于 Swift 5.9 新功能实现的 Core Data 的 Swift 封装库。

35710

SwiftUI 中的内容边距

200 : 0) } }}我们通过使用 horizontalSizeClass 环境值 safeAreaPadding 视图修饰符,将内容移动到了 iPad 上的中心。...然而,正如你所见,这也将滚动条指示器从后导边缘移到了中心。使用 contentMargins我们需要一种区分视图的内容工具栏,并仅移动内容而保持工具栏在原地的方法。...但是它将滚动条保留在视图的后导边缘。contentMargins 视图修饰符接受几个参数,允许我们调整其行为。第一个参数是我们想要移动的边缘。...可运行 Demo提供一个基于提供的代码片段的简化版本的Swift Playground示例,用于演示如何使用contentMargins视图修饰符来管理内容边距。...根据水平尺寸类别的不同(正常或紧凑),我们使用 contentMargins 视图修饰符来管理水平方向上的内容边距。在紧凑水平尺寸类别下,我们将内容移动了 200 个点,以便在大屏幕设备上居中显示。

11932

平面检测-搜索真实世界的表面

水平平面检测 首先,我们需要打开配置的平面检测属性并将其设置为水平,以检测平面(如地板或桌子)。...sceneView.delegate = self 一旦执行了任务,代表就会将信息报告回场景视图。 为了更多地了解Swift中的委派,我邀请您访问或查看本书第4章中的委托部分。...在ViewController.swift文件中,将其删除。当我们在它时,向下滚动并删除Mark下的注释掉的代码,这是该协议下的一个方法的给定示例。Mark帮助我们分离文件中的代码段。...planeNode.eulerAngles.x = -.pi / 2 但严重的是,谁有时间甚至想要计算转换度数弧度?...幸运的是,Swift有一个功能,GLKMathDegreesToRadians,所以利用它。注释掉前一行代码并替换为此代码。

2.9K30

手把手带你撸一个网易云音乐首页(一)

前言 Hello,大家好,近期我一直在学习用 Swift 编码,由于之前很多项目我都是用 OC 实现的,所以导致我现在对 Swift 还是处于一个学习的阶段中。...为了提高自己的学习效率,每次我都会为自己定下一个短期的目标,就那这次来说吧,为了加快自己上手 Swift, 我为自己定下了的目标就是完成一个 Swift 版本的网易云音乐 App。...song": { ...... } 数据源的问题解决了,接下来就是该解决如何将数据可视化了,从网易云音乐首页展示的效果分析来看,整体的视图支持上下滚动...,其中单个 Cell 的视图支持横向滚动,所以这里采用 UITableView 嵌套 UICollectionView 的方式应该来说再合适不过了。...剩下的就是需要用到的一些第三方库了,在这里我们用到的第三方库如下: Alamofire Kingfisher SnapKit 需要实现的功能 它的首页内容大致可以分为以下几部分: 顶部搜索视图 Banner

1K20

Swift 周报 第三十三期

功能的演变提案实际上讨论了几种不同的语法,并解释了为什么选择反斜杠[4]。 前缀意味着您正在访问相关属性的属性包装器提供的特殊功能。...讨论所需的 Swift 语言功能可以提升 C++ 互操作性支持的状态[6] 内容: Swift 5.9 可以在 Swift 中导入使用多种 C++ 类型。但是,并非所有类型类别都受支持。...这篇文章列出了一组所需的 Swift 语言功能,这些功能使我们能够支持 Swift 中的大多数 C++ 类型: 对不可复制类型的泛型支持。...从这个角度来看,Swift 仍然缺少完整的命名空间功能。可以是模块级命名空间,但更完整可靠。...结合 Swift Package 的可重用性 Swift Package 插件的强大功能,甚至可以在构建时从字体文件自动生成所有必要的代码。本文使用 SwiftGen 来演示如何实现这一点。

31720

iOS开发常用之图像浏览及处理

GPUImage2.swift - Swift版基于GPU图像视频处理框架库。...AFImageHelper - swift,一套针对UIImageUIImageView的实用扩展库,功能包含填色渐变,裁剪,缩放以及具有缓存机制的在线图片获取。...HZPhotoBrowser - 一个类似于新浪微博图片浏览器的框架(支持显示隐藏动画;支持双击缩放,手势放大缩小;支持图片存储;支持网络加载gif图片,长图滚动浏览;支持横屏显示)。...BeautyHour - 完整应用,功能与“美图秀秀”雷同。 MPParallaxView - 是用Swift写的类似Apple TV Parallax效果的视图。...YYImage - 功能强大的iOS图像框架,支持大部分动画图像,静态图像的播放/编码/解码。 PagingView.swift - 注重细节的自动布局分页视图组件。

3.8K60

掌握 ViewThatFits

通常这个顺序是从最大到最小,但由于一个视图可能在一个受限轴上适应但在另一个轴上不适应,所以这并不总是如此。默认情况下,ViewThatFits 在水平和垂直轴上都进行约束。...ScrollView:如果理想状态的轴与滚动方向一致,则在滚动方向上一次性展示所有的子视图而无视父视图的建议尺寸。 VStack、HStack、ZStack:所有子视图在理想状态下的整体呈现。...高度:VStack 将所有子视图的理想尺寸高度 Spacing 的作为自己的需求尺寸。...SwiftUI 提供了两个版本的 fixedSize ,我们当前使用的版本要求视图水平和垂直两个轴向上都使用理想尺寸,而另一个版本允许我们对单个轴向进行限定。...在本节中,我们将通过几个示例来展示 ViewThatFits 的功能。 自适应滚动 通过下面的代码,我们可以实现在内容宽度超过给定宽度时,自动进入可滚动状态。

16710

零基础入门 23: UGUI ScrollView

Hello,大家好,我是Jimin,马上就是五一假期了,提前祝大家假期愉快 今天要分享的内容,是近期内关于UGUI的最后一篇,UGUI里的滚动视图ScrollView,后期的内容会根据项目实用的功能组件进行分享...为什么要勾掉Mask上的show mask呢,通常我们在制作滚动视图的时候,因为每一个cell都可以进行背景填充,所以并不是很需要这个大的背景板,如果大家需要,也可以不勾。...因为这个父节点要装下我们滚动列表的内容,所以width宽度我选择滚动视图一样的,而增加这个内容节点的高即Height值 ? 接下来是为我们的滚动视图增加要滚动显示的子项了。...因为我们要创建的是垂直的,所以在ScrollRect组件上把水平滚动去掉。 ? 此时我们运行项目,来查看一下效果。顺便在运行中,我又复制了几个图片,来穿插显示,这样更能体现出我们滚动视图的显示。 ?...从Unity为大家提供的控件来看,和我们手作的区别,在于现成的组件已经把结构都为大家搭建完毕,并且为大家创建好了两个滚动条以为区分显示使用。 以上就是俩种在Unity里实现UGUI 滚动视图的方式。

3K20

iPhone 激活量跌至六年来新低 | Swift 周报 issue 52

特拉建议,从 Errno.current 返回一个结构体并从 Swift 调用它,但约翰斯・维斯特建议,在所有情况下都可能不起作用。...与 Java 的函数式接口(允许 lambda 无缝集成到类型系统中)类似,社区的目标是在 Swift 中的闭包和协议之间实现类似水平的内聚力。...总的来说,讨论反映了增强 Swift 表达能力并弥合闭包和协议之间差距的愿望。 通过探索各种概念替代方案,社区寻求以有利于开发人员并提高语言功能的方式发展 Swift。...参与者提出了替代解决方案,例如将类似互斥锁的功能直接合并到 Swift 的 actor 模型中,以解决重入交错问题。 然而,人们担心引入复杂性死锁的可能性。...最后,作者介绍了 contentMargins 视图修饰符的用法,可以将可滚动内容移动到安全区域外,同时保持滚动条在原位。

18032

应用程序内购买教程:入门

构建并运行以查看它到目前为止的功能。答案是:不是很多!您将看到一个空表视图,导航栏中有一个“恢复”按钮,稍后将连接该按钮以恢复购买。 ?...主视图控制器位于MasterViewController.swift中。此类显示表视图,其中包含可用IAP列表。购买存储为SKProduct对象数组。...向下滚动到“ 应用服务”部分。请注意, 默认情况下启用应用程序内购买 GameCenter。单击继续,然后单击注册完成。 恭喜!您有一个新的App ID!...现在向下滚动到“ 本地化”部分,并注意英语(美国)有一个默认条目。为显示名称描述输入“Swift Shopping” 。单击保存。大!您已经创建了第一个IAP产品。 ?...打开IAPHelper.swift滚动到文件的底部。

5.4K20
领券