1. <legend id='JA0Yj'><style id='JA0Yj'><dir id='JA0Yj'><q id='JA0Yj'></q></dir></style></legend>

        <i id='JA0Yj'><tr id='JA0Yj'><dt id='JA0Yj'><q id='JA0Yj'><span id='JA0Yj'><b id='JA0Yj'><form id='JA0Yj'><ins id='JA0Yj'></ins><ul id='JA0Yj'></ul><sub id='JA0Yj'></sub></form><legend id='JA0Yj'></legend><bdo id='JA0Yj'><pre id='JA0Yj'><center id='JA0Yj'></center></pre></bdo></b><th id='JA0Yj'></th></span></q></dt></tr></i><div id='JA0Yj'><tfoot id='JA0Yj'></tfoot><dl id='JA0Yj'><fieldset id='JA0Yj'></fieldset></dl></div>
          <bdo id='JA0Yj'></bdo><ul id='JA0Yj'></ul>
      2. <tfoot id='JA0Yj'></tfoot>

        <small id='JA0Yj'></small><noframes id='JA0Yj'>

      3. 如何在 iOS 中以编程方式设置纵横比约束?

        How can I set aspect ratio constraints programmatically in iOS?(如何在 iOS 中以编程方式设置纵横比约束?)
        <i id='hys32'><tr id='hys32'><dt id='hys32'><q id='hys32'><span id='hys32'><b id='hys32'><form id='hys32'><ins id='hys32'></ins><ul id='hys32'></ul><sub id='hys32'></sub></form><legend id='hys32'></legend><bdo id='hys32'><pre id='hys32'><center id='hys32'></center></pre></bdo></b><th id='hys32'></th></span></q></dt></tr></i><div id='hys32'><tfoot id='hys32'></tfoot><dl id='hys32'><fieldset id='hys32'></fieldset></dl></div>

        • <bdo id='hys32'></bdo><ul id='hys32'></ul>

              <small id='hys32'></small><noframes id='hys32'>

              <tfoot id='hys32'></tfoot>
              <legend id='hys32'><style id='hys32'><dir id='hys32'><q id='hys32'></q></dir></style></legend>

                <tbody id='hys32'></tbody>
                  本文介绍了如何在 iOS 中以编程方式设置纵横比约束?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我为我的视图控制器使用了自动布局.我已经在约束中设置了 V 和 H 位置,但我想知道当按钮变为 5s、6 和 6 Plus 时如何增加按钮大小.这是我为登录按钮添加约束的方式:

                  I have used auto layout for my view controllers. I have set the V and H positions in constraints, but I want to know how can I increase my button size when it changes to 5s, 6 and 6 Plus. This is the way I added constraints for the login button:

                  NSArray *btncon_V=[NSLayoutConstraint constraintsWithVisualFormat:@"V:[btnLogin(40)]" options:0 metrics:nil views:viewsDictionary];
                  [btnLogin addConstraints:btncon_V];
                  
                  NSArray *btncon_POS_H=[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-100-[btnLogin]-100-|" options:0 metrics:nil views:viewsDictionary];
                  [self.view addConstraints:btncon_POS_H];
                  
                  
                  NSArray *btncon_POS_V=[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-70-[Title]-130-[lblFirst]-0-[lblSecond]-20-[textusername]-10-[txtpassword]-10-[btnLogin]" options:0 metrics:nil views:viewsDictionary];
                  
                  [self.view addConstraints:btncon_POS_V];
                  

                  但我的问题是,虽然它管理左侧和右侧间隙,但由于高度是固定的,它在 iPhone 6 和 6 Plus 中被拉伸.如何根据屏幕尺寸增加尺寸?我认为这可能是纵横比,但是如何在代码中设置纵横比约束?

                  But my problem is that while it manages the left and right side gap, it's getting stretched in iPhone 6 and 6 Plus since the height is fixed. How can I increase the size according to the screen size? I think this might be the aspect ratio, but how can I set the aspect ratio constraint in code?

                  推荐答案

                  像这样.尝试一次.

                  [self.yourview setTranslatesAutoresizingMaskIntoConstraints:NO];
                  [self.yourview addConstraint:[NSLayoutConstraint
                                                    constraintWithItem:self.yourview
                                                    attribute:NSLayoutAttributeHeight
                                                    relatedBy:NSLayoutRelationEqual
                                                    toItem:self.yourview
                                                    attribute:NSLayoutAttributeWidth
                                                    multiplier:(self.yourview.frame.size.height / self.yourview.frame.size.width)
                                                    constant:0]];
                  

                  或代替 (self.yourview.frame.size.height/self.yourview.frame.size.width) 您可以使用任何浮点值.谢谢.

                  or in the place of (self.yourview.frame.size.height / self.yourview.frame.size.width) you can use any float value. Thanks.

                  Swift 3.0 -

                  self.yourview!.translatesAutoresizingMaskIntoConstraints = false
                  self.yourview!.addConstraint(NSLayoutConstraint(item: self.yourview!,
                                                            attribute: NSLayoutAttribute.height,
                                                            relatedBy: NSLayoutRelation.equal,
                                                            toItem: self.yourview!,
                                                            attribute: NSLayoutAttribute.width,
                                                            multiplier: self.yourview.frame.size.height / self.yourview.frame.size.width,
                                                            constant: 0))
                  

                  这篇关于如何在 iOS 中以编程方式设置纵横比约束?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  iOS AutoLayout - get frame size width(iOS AutoLayout - 获取帧大小宽度)
                  Auto layout constraints issue on iOS7 in UITableViewCell(UITableViewCell中iOS7上的自动布局约束问题)
                  How to resize superview to fit all subviews with autolayout?(如何调整超级视图的大小以适应所有具有自动布局的子视图?)
                  Springs in Auto Layout: Distribute views evenly, with constraints, in Xcode 5(自动布局中的弹簧:在 Xcode 5 中使用约束均匀分布视图)
                  reloadData() of UITableView with Dynamic cell heights causes jumpy scrolling(具有动态单元格高度的 UITableView 的 reloadData() 导致跳跃滚动)
                  What is NSLayoutConstraint quot;UIView-Encapsulated-Layout-Heightquot; and how should I go about forcing it to recalculate cleanly?(什么是 NSLayoutConstraint“UIView-Encapsulated-Layout-Height?我应该如何强制它干净地重新计算?) - IT屋-程序员
                      <tbody id='73MMz'></tbody>
                  • <small id='73MMz'></small><noframes id='73MMz'>

                      <legend id='73MMz'><style id='73MMz'><dir id='73MMz'><q id='73MMz'></q></dir></style></legend>

                      <tfoot id='73MMz'></tfoot>
                      • <bdo id='73MMz'></bdo><ul id='73MMz'></ul>

                          • <i id='73MMz'><tr id='73MMz'><dt id='73MMz'><q id='73MMz'><span id='73MMz'><b id='73MMz'><form id='73MMz'><ins id='73MMz'></ins><ul id='73MMz'></ul><sub id='73MMz'></sub></form><legend id='73MMz'></legend><bdo id='73MMz'><pre id='73MMz'><center id='73MMz'></center></pre></bdo></b><th id='73MMz'></th></span></q></dt></tr></i><div id='73MMz'><tfoot id='73MMz'></tfoot><dl id='73MMz'><fieldset id='73MMz'></fieldset></dl></div>