问题标签 [snapkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 在 Swift 中自动调整多行 UILabel
我已经尝试了一切来在 Swift 中自动调整我的 UILabel 大小。当它是一行时,我可以自动调整文本的大小,但是当它是两行时,它不再起作用。UILabel 中的文本通常大约每 10 秒发生一次更改。我试过的代码是:
原始文本“Ffafdafafdfa fafda dfafaf afa”将自动调整大小,但是当调用 updateDirection 时,字体大小不会从 40 更改。我还尝试将行数设置为 2 并删除 .byWordWrapping。如何让我的 UILabel 自动调整大小?
ios - Swift:使用 snapkit 时如何获得正确的 UICollectionView 高度?
我可能会以完全错误的方式解决这个问题,因为我尝试做的事情应该很简单......我有一个包含几个子视图的视图组件,其中一个是 UICollectionView。我使用 SnapKit 布局子视图。UICollectionView 是按钮的流布局,跨越 0-n 行,按钮的数量从一开始就知道。
当我通过 SnapKit 配置约束时,集合的高度为 0,因为不存在任何项目(仍然没有调用 cellForItemAt)。
我将如何在 SnapKit 中动态设置集合的高度?或者有没有更好的方法来获得我正在寻找的非常基本的流程布局(使用动态高度调整)?
(注:代码有点简化,只显示相关部分)
谢谢!
编辑:添加了缺失的课程
谢谢楼下的回复。它确实有效,即使我错过了包含一半代码,你也能得到这个问题 :-) 下面是缺失的部分,它是使用 CategoryList 的类。在您的帮助下,我让 CategoryList 动态扩展到正确的高度,这非常好。但是,它会打乱周围视图(下面的 view1 和 view2)的位置。我怀疑这与
make.height.equalTo(categoryList.collectionView.snp.height)
行,也许它应该只引用 collectionView 约束属性,但我不知道应该(甚至可以)怎么做?
swift - SnapKit 中的不稳定错误
以下是我的 viewDidAppear() 方法,我正在尝试为我的应用程序设计一个功能的原型。graphicsView 实例变量通过情节提要绑定到我编写的 NSView 子类的实例,该子类又包含在 NSSplitView 内的 NSScrollView 中。此代码位于该视图的视图控制器中。
执行时,我Cannot form weak reference to instance (0x6000001224e0) of class NSTextView. It is possible that this object was over-released, or is in the process of deallocation.
在约束的尾随闭包的右括号上收到错误以及通常的 EXC_BAD_INSTRUCTION 错误。
据我所见, NSTextView 将被强烈保留box
,所以我不知道错误的来源。错误出现在第一行ConstraintItem.init(target: AnyObject?, attributes: ConstraintAttributes)
。根据我在此处发布的自述文件中的说明;SnapKit 团队中的某个人可能会对该错误有任何额外的了解吗?(如果我删除box
-related 代码,该应用程序将正常运行。)
补充资料:
异常发生在 ConstraintItem.swift 的第 37 行,即self.target = target
. 我在该行之前设置了一个断点并在调试器中执行 e 目标;这是我得到的:
ios - 使用 SnapKit 的 UICollectionViewCell 布局
我有一个简单的 UICollectionViewCell,它是全宽的,我正在使用 SnapKit 来布局它的子视图。我将 SnapKit 用于我的其他视图,它运行良好,但不在 collectionViewCell 中。这是我想要实现的布局: collectionViewCell layout
collectionViewCell 的代码是:
在不应用任何约束的情况下,imageView 会显示在单元格的左上方,但应用任何约束会使图像消失。在调试视图中检查 collectionViewCell 会显示 imageView 和约束,但“UIImageView 的大小和水平位置不明确”。
我还尝试设置 contentView.translatesAutoresizingMaskIntoConstraints = false 等,但结果相同。
我正在使用所有代码,没有故事板 UI 或布局。
谢谢你的帮助!
ios - Koloda - 加载时的动画随机播放效果
我正在使用Koloda来展示一副可以刷过的扑克牌。我的这部分工作得很好。
当我最初加载这副卡片时,我希望每个视图/卡片分别飞入,然后显示为堆叠。我将其称为洗牌或deal
效果(例如当您发牌时)。据我所知,科洛达似乎不允许这样做。我看到的动画是在它们已经堆叠之后显示整个视图/帧堆栈。所以在我的例子中,这意味着整个甲板。我也看不到一种在不导致完全重新加载的情况下逐个添加视图/卡片的方法。
如果我有 3 张卡,这就是我希望它如何工作
卡片 1(甲板底部以动画方式从左侧飞入)
.2 秒等待
卡 2 (从甲板底部的第二张/中间卡飞入)
.2 秒等待
卡片 3(甲板顶部飞入)
继续正常的 Koloda View。
我尝试将动画添加到作为 contentViews 添加的 UIViews,但它看起来不正确。我目前的猜测是使用自定义动画,animateAppearanceWithCompletion
但我运气不佳。还有一种frameForCard
方法可行吗?
如果有帮助,我将在项目中使用 Snapkit。我的目标是 iOS 9+
ios - 在使用 SnapKit 的 iOS 上,为什么子视图的原点不是其父视图的原点?
通常,当您想到父视图-子视图的关系时,人们会倾向于期望子视图的原点将包含在父视图中(通常是父视图的原点)。然而,在UIKit
iOS 上,情况似乎并非如此。为什么子视图的原点 (0,0) 的UIWindow
?
为了演示,下面的代码生成了两个 UIView,一个是另一个的子视图。由于某种原因,innerView
原点似乎是整个UIWindow
. 我希望原点innerView
是原点outerView
(其原点由其超级视图的中心点决定)。
我得到什么:
我想要的是:
添加额外的SnapKit
约束线将innerView
原点设置为原点,outerView
但我发现这一步是无关紧要的。
这可能是对 iOS 中视图层次结构的根本误解,因为我一直依赖 Storyboards。这是我第一次涉足 iOS 上的程序化 UI,所以我仍在思考所有的细微差别。现在,证据使我相信每个视图——无论它存在于视图层次结构中的哪个位置——都从 key 的位置 (0,0) 开始UIWindow
。
ios11 - dyld: Library not loaded: @rpath/libswiftMetal.dylib on iOS 11(15A5304j) with Xcode 9 beta 6
I'm trying to provide iOS 11 support to my existing project but when I launch my existing project, my app gets crash as soon as it launches with following error at Xcode console
I know there are lots of answer around this already but nothing worked for me.
Note: I'm using iOS 11 iPad and Xcode-beta 5
Update 1: this problem occurs on my iPad iOS11(15A5304j), on iPhone 6plus iOS 11(15A5327g) works fine.
ios - 在 Swift 3 中使用 SnapKit 以编程方式修改约束以删除一个 UIView
我正在使用 SnapKit 修改 UIView 高度的约束,该约束由 nameTextField 及其 superView inputContainerView 组成。我安排nameTextField的高度等于inputContainerView的高度的三分之一。我的目的是在按下 SegmentedControl 时删除 nameTextField。当我尝试修改常量时,它工作得很好。但是当我尝试将乘数高度值从 (1/3) 修改为 0 时,有时它会崩溃,有时我编写的另一个 textField(passwordTextField 和 emailTextField)会消失。我正在使用 updateContraint 来更新一些约束。我该如何解决这个问题?谢谢