如何以编程方式在 IOS 的 UIStackView 中重新排序项目?

Posted

技术标签:

【中文标题】如何以编程方式在 IOS 的 UIStackView 中重新排序项目?【英文标题】:how to programmatically reorder items within a UIStackView in IOS? 【发布时间】:2016-06-09 05:24:52 【问题描述】:

如何在 ios 的 UIStackView 中以编程方式重新排序项目?

(即我在https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIStackView_Class_Reference/#//apple_ref/doc/uid/TP40015256-CH1-SW30 看不到一个函数来覆盖这个)???

【问题讨论】:

【参考方案1】:

将视图添加到父视图时,它会自动从旧的父视图中删除。

这和arrangedView是一样的,所以你只需要使用insertArrangedSubview(_:atIndex:)addArrangedSubview()

不需要使用removeArrangedSubview()

【讨论】:

【参考方案2】:

当然你可以结合使用

removeArrangedSubview(_:)
insertArrangedSubview(_:atIndex:)

重新排列您的视图?

【讨论】:

你知道从 UI 角度看这是否会产生“闪烁”吗?例如uiView 可能会出现在屏幕上的其他位置几分之一秒,然后跳回堆栈视图?我应该试试... 它不应该,因为所有的删除和添加操作都会在布局刷新之前发生,所以所有的变化都会在下一个绘图周期中立即出现(如果你不做一些奇怪的事情) @Greg 在过去的 484 天里,我每天都在等待您的回音!我不能再沉默了 @GregHilston 哈哈哈

以上是关于如何以编程方式在 IOS 的 UIStackView 中重新排序项目?的主要内容,如果未能解决你的问题,请参考以下文章

在 iOS 中录制语音时如何以编程方式生成音频波形?

如何在 iOS 中以编程方式禁用/启用睡眠模式?

如何以编程方式检查设备是不是在 iOS 中设置振动模式?

iOS - 如何以编程方式为控件设置自定义类

如何在 iOS 上以编程方式创建选项卡视图

如何以编程方式获取 iOS 设备 MAC 地址