问题标签 [uistackview]
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.
interface-builder - Interface Builder 在 IBPlatformToolFailureHandler.m 中使用断言崩溃
我正在使用 Xcode 7.0.1,并且几天以来,在设置 UIStackViews 的属性时,我经常遇到 Interface Builder 崩溃。
我用一个从头开始创建的非常简单的项目重现了这个问题。这个项目只包含一个带有单个 viewController 的 Storyboard,其中包含一个带有 UITableViewCell 的 UITableView,其中包含 5 个带有多个 UIStackViews 的 UILabel。
每次我更改 UIStackView Xcode 崩溃之一的几个属性时,都会出现以下错误。
有时我可以重新打开项目,有时不能(Xcode 在启动时崩溃)。我的 MacBookPro 和旧的白色 MacBook 上的同一个项目也有同样的问题,它们都运行相同版本的 Xcode 和 OS X El Capitain。
欢迎任何有关解决方法或解决方法的想法。
路径:/Applications/Xcode.app/Contents/MacOS/Xcode 标识符:com.apple.dt.Xcode 版本:7.0.1 (8228) 构建信息:IDEFrameworks-8228000000000000~5 应用项目 ID:497799835 应用外部 ID:813434267 代码类型:X86-64(本机)父进程:??? 1 负责人:Xcode [2177] 用户 ID:501
日期/时间:2015-10-10 18:29:07.206 +0200 操作系统版本:Mac OS X 10.11 (15A284) 报告版本:11 匿名 UUID:4CEF61B0-80F0-668D-225D-39382C5053E4
睡眠/唤醒 UUID:C7D655B2-BA3E-4DAF-AC3A-F9AB2B1609DC
自启动以来的唤醒时间:13000 秒自唤醒以来的时间:8800 秒
系统完整性保护:启用
崩溃的线程:0 调度队列:com.apple.main-thread
异常类型:EXC_CRASH (SIGABRT) 异常代码:0x0000000000000000, 0x0000000000000000 异常说明:EXC_CORPSE_NOTIFY
应用程序特定信息:IBDocumentDidFinishEditingNotification ProductBuildVersion:7A1001 ASSERTION FAILURE in /Library/Caches/com.apple.xbs/Sources/IDEInterfaceBuilder/IDEInterfaceBuilder-8191/InterfaceBuilderKit/Utilities/IBPlatformToolFailureHandler.m:315 详细信息:无法计算自动布局状态 IBLayoutConstraint、IBUILabel 、IBUIStackView、IBUITableViewCell、IBUITableViewCellContentView 和 IBUIView。
与 Interface Builder Cocoa Touch Tool 通信时遇到错误。如果您选择为此问题提交崩溃报告或 Radar,请将“/var/folders/q3/g2n6m_1x57583jym4b_808jw0000gn/T/IB-agent-diagnostics_2015-10-10_18-29-07_130000”中的诊断信息压缩并附加到您的崩溃中报告。
异常名称:NSInternalInconsistencyException 异常原因:{objective 0x7ff0e2677310: <1:20> + <1:1>*0x7ff0e268c6c0.marker{id: 4430}}:内部错误。为变量 UILabel:0x7ff0e4c71c20'Last Period'.Height{id:4185} 设置空向量。Exception backtrace: 0. CoreFoundation 0x0000000109dfbf4d __exceptionPreprocess 1. libobjc.A.dylib 0x0000000109875deb objc_exception_throw 2. CoreFoundation 0x0000000109dfbe9d +[NSException raise:format:] 3. Foundation 0x000000010944e930 -[NSISObjectiveLinearExpression setPriorityVector:forKnownAbsentVariable:] 4. Foundation 0x00000001095f01b7 __128-[NSISObjectiveLinearExpression replaceVariable :withExpression:processVariableNewToReceiver:processVariableDroppedFromReceiver:]_block_invoke 5.
ios - UIStackView - 拖动以重新排列排列的子视图?
我正在尝试就如何实现在 aUITableView
但在 a 上发现的相同类型的“拖动以重新排序”行为获得一些建议UIStackView
。
到目前为止,这就是我的想法:
arrangedSubview
为每个s添加一个长按手势识别器- 长按时,将叠加层
UIView
作为子视图添加到主视图并填充整个主视图。当我拖动临时的“重新排序”视图时,这个覆盖视图将充当某种“画布”——我们称之为tempView
——周围(更多内容在 4 中) - 将 的 设置
alpha
为arrangedSubview
0(设置hidden = true
将导致UIStackView
动画关闭,就好像它已被删除一样。 - 使用
tempView
与_ _arrangedSubview
tempView
向上或向下拖动并arrangedSubview
根据tempView
.- 听长按
state
的时间.Ended
并从主视图中设置arrangedSubview.alpha = 1
和删除覆盖视图。
有什么建议么?任何人看到的任何明显的洞?你会改变什么?你会朝着什么方向去实现这个目标?
ios - 在仅变换层中更改属性 contentsGravity 将无效
我开始创建一个非常简单的井字游戏。主要目标是使视图与所有 iOS 设备的所有屏幕尺寸成比例。因此,我将图像放在 a 上ViewController
,使其全屏显示,然后将其放入 Stack View 中。我已经向这个 Stack View 0 添加了所有方面的约束。当我运行模拟器时,一切看起来都很好。但我在控制台面板中收到一条消息。这是什么意思?
ios - UIStackView 孩子等间距(周围和之间)
如何让 UIStackView 具有与视图之间的填充和间隙相同的空间?
我怎样才能实现这种布局:
当这个不适合我时:
这也不是:
我只需要周围的视图空间与视图之间的空间相同。为什么这么难?
重要的
是,我正在使用我的TZStackView 分支来支持 iOS 7。所以layoutMargins
对我来说不是 :(
ios - 如何修复视图居中之谜?
我有一个 UIStackView,它包含一个图像视图和一个文本视图。图像视图有一个活动指示器视图作为子视图(我以编程方式添加)。当视图初始视图加载时,我将活动指示器视图置于图像视图的中心并启动 AIV 的动画。但是,在等待图像加载的过程中,如果我旋转图像视图,则需要将 AIV 重新居中。我添加了代码来监听状态栏方向更改通知,并有一个方法可以在通知上调用(UIApplicationDidChangeStatusBarOrientationNotification)。在该方法中,我尝试获取图像视图的边界并使用它在图像视图中重新居中 AIV。但是,当设备方向改变时,图像视图的边界值似乎没有改变。有没有“靠谱” 设备方向更改后如何获取视图的更新边界?代码 ->
然后我有:
更新:
所以我摆脱了上述并尝试了这个:
在我看来,这是加载方法。控制台吐出这个:
2015-10-27 19:26:09.303 Historic Sites Navigator[373:93902] 视图层次结构没有为约束做好准备:添加到视图时,约束的项必须是该视图(或视图本身)的后代。如果在组装视图层次结构之前需要解决约束,这将崩溃。中断 -[UIView(UIConstraintBasedLayout) _viewHierarchyUnpreparedForConstraint:] 进行调试。2015-10-27 19:26:09.308 Historic Sites Navigator[373:93902] 视图层次结构没有为约束做好准备。约束:容器层次结构:> | > 在容器层次结构中找不到视图:> 该视图的超级视图:> 2015-10-27 19:26:09.310 Historic Sites Navigator[373:93902]* 由于未捕获的异常“NSGenericException”而终止应用程序,原因:“无法在视图上安装约束。约束是否引用了视图子树之外的内容?那是违法的。constraint: view:>' * First throw call stack: (0x2643767b 0x377b2e17 0x264375c1 0x27177983 0x2a628f85 0x2a628dd5 0x2a628cef 0x2ad33971 0x2a628bd7 0xdf6c4 0xdfe34 0x2a5271c7 0x2a526dad 0x2ad8ca09 0x2a8689ad 0x2a88c095 0x2a88e6c5 0x2a88e931 0x2a61e989 0x2a891bb7 0x2ab33085 0x2ac09b39 0x2ac09967 0x2a883d95 0xccac8 0xccc10 0x2a659487 0x2a71440b 0x2a7cc0b9 0x2a7d79eb 0x2a519ecd 0x263fa4c9 0x263f87cd 0x263f8bff 0x2634c119 0x2634bf05 0x2f502ac9 0x2a58ef15 0xd6e74 0x37f21873) libc++abi.dylib:以 NSException 类型的未捕获异常终止
ios - UIStackView自己的intrinsicContentSize
我正在使用具有以下配置的 UIStackView:
每个元素都有自己的intrinsicContentSize
,因此应该可以UIStackView
提供自己的intrinsicContentSize
. 该文档指出,spacing
用作最小间距。
例子:
stackView的intrinsicContentSize.width
应该是30
.
相反,我得到:
这告诉我 intrinsicContentSize
无法提供。
你们中的任何人都知道我是否做错了什么,这种行为是有意的还是这是一个错误?
ios - UIStackView 错误计算 UIImageView 高度
我在 aUIStackView
中包含一个UICollectionViewCell
用于表示社交网络上的帖子(类似于 Instagram 单元格的样式)。UIStackView
包含一个作者标题(自定义)UIView
、一个UIImageView
用于内容图像、一个UILabel
用于帖子正文和一个UIToolbar
用于操作。最终视图如下所示。
UICollectionViewCell 的高度是通过设置尺寸单元格来设置的,如下所示:
问题是 UIImageView 似乎增加了 UICollectionViewCell 的大小,而没有增加图像视图的大小。这是我将大图像添加到图像视图时的结果。期望的结果是图像保持 1:1 的纵横比,受限于 UIStackView 的宽度。
正文标签和其余内容之间的间隙大小会根据我使用的图像而变化。这让我相信这只是在考虑单元格大小UIStackView
时以某种方式考虑图像大小,因为从视觉上看,图像视图是正确的大小。正如您在发布的第一张图片中看到的那样,当尚未设置图像视图的图像时,单元格布局完美。
这是堆栈视图、图像视图和标签的设置代码:
有任何想法吗?