首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态自动布局

动态自动布局
EN

Stack Overflow用户
提问于 2016-06-17 16:01:06
回答 1查看 77关注 0票数 0

给每一个读过它的人。我想使聊天应用程序,如Viber,WhatsApp等,对我来说,主要的问题是动态设计。我知道如果用户界面是粘滞的,如何处理约束,但是,如果它是变化的,我不知道。请看Viber的动画:

在输入和接收或发送消息时,一切都在移动和变化。如何使用Autoalyout来实现?尤其是我对如何使用UITextView做这件事很感兴趣。在键入时将其展开,以及更重要的是,如何将表视图移到其上方。也许,改变包含文本视图的父视图的大小。我认为所有这些东西都可以被称为动态自动布局。我将感谢任何帮助或建议!我使用的是Swift和Xcode7,都是最新版本。

EN

回答 1

Stack Overflow用户

发布于 2016-06-19 15:01:13

这是一段使用UIStackViews构建小键盘的代码。布局由UIStackView管理。

代码语言:javascript
复制
func newPad(runModeVariable:Int) {


    var xPos:CGFloat = 0
    var yPos:CGFloat = 0

    keyPadWindow = UIView(frame: CGRect(x: xPos, y: yPos, width: 320, height: 356))

    var keyCount = 0
    keyPadSV = UIStackView(frame: CGRect(x: 0, y: 0, width: 320, height: 356))
    keyPadSV!.axis = .Vertical
    keyPadSV!.spacing = 0.0
    keyPadSV!.alignment = .Center
    keyPadSV!.distribution = .EqualSpacing
    for _ in 0 ..< 5 {
        let keyPadSVB = UIStackView(frame:CGRect(x: 0, y: 0, width: 0, height: 0))
        keyPadSVB.axis = .Horizontal
        keyPadSVB.spacing = 0.0
        keyPadSVB.alignment = .Center
        keyPadSVB.distribution = .EqualSpacing
        for _ in 0 ..< 4 {
            let button   = UIButton(type: UIButtonType.Custom) as UIButton
            button.frame = CGRectMake(0, 0, 0, 0)
            button.tag =  keyCount
            let blah = "x" + String(keyCount)
            let blahIMAGE = UIImage(named: blah)
            button.setImage(blahIMAGE, forState: UIControlState.Normal)

            button.addTarget(self, action: #selector(ViewController.keyPadPress(_:)), forControlEvents: UIControlEvents.TouchUpInside)
            keyPadSVB.addArrangedSubview(button)
            keyCount += 1
        }
        keyPadSV.addArrangedSubview(keyPadSVB)
    }
    keyPadWindow.addSubview(keyPadSV)
    self.view.addSubview(keyPadWindow)
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37876198

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档