Swift 3 - 滑动堆栈视图?

Swift 3 - Sliding stack views?

我目前正在 Swift 3 / xcode 中在我的应用程序上制作注册表单,我首先有 3 个文本字段显示,下面有一个继续按钮,我想要它,所以用户按下继续按钮,当前 stackview 滑出视图,新的 stackview 滑入(类似于故事板的 segue

这将首先显示,然后他们按继续:

然后这个堆栈视图将显示:

有人可以指出正确的操作方向吗?

谢谢。

对于你的情况,我不太确定使用 stackView 的目的是什么。我建议改用 UICollectionView(水平)(UIStackView 不滚动,这不适合您要实现的目标),尤其是在您的情况下,这两个视图应该是同一个单元格。您所要做的就是检查当前的 indexPath.row 以确定哪些单元格的组件应该 look/behave.

此外,您可以将目标添加到按钮,让 collectionView 滚动到下一个单元格(如果它是第一行),对于第二行,它应该 - 例如 - 提交表单。

希望对您有所帮助。

@Chad,如果您想使用可滚动且简单的解决方案,您可以尝试 ScrollableStackView 库。这是 github 页面:

https://github.com/gurhub/ScrollableStackView

下面是一些示例代码:

Swift

import ScrollableStackView

var scrollable = ScrollableStackView(frame: view.frame)
view.addSubview(scrollable)

// add your views with 
let rectangle = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 55))
rectangle.backgroundColor = UIColor.blue
scrollable.stackView.addArrangedSubview(rectangle)
// ...

Objective-C

@import ScrollableStackView

ScrollableStackView *scrollable = [[ScrollableStackView alloc] initWithFrame:self.view.frame];
scrollable.stackView.distribution = UIStackViewDistributionFillProportionally;
scrollable.stackView.alignment = UIStackViewAlignmentCenter;
scrollable.stackView.axis = UILayoutConstraintAxisVertical;
[self.view addSubview:scrollable];

UIView *rectangle = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 55)];
[rectangle setBackgroundColor:[UIColor blueColor]];

// add your views with
[scrollable.stackView addArrangedSubview:rectangle]; 
// ...

希望对您有所帮助。