菜鸟教程小白 发表于 2022-12-12 23:34:08

ios - 使用自动布局查看两个位置


                                            <p><p>我有一个我想要定位的 View 列表。我有两个州的 View 应该以不同的方式定位。</p>

<p>我是 AutoLayout 的新手,我可能以错误的方式访问它 - 我愿意接受不同的方式。</p>

<p>我已经创建了这个来定位第一个状态的 <code>TabBarItem : UIView</code> 列表:</p>

<pre><code>NSMutableDictionary* metrics = [@{@&#34;margin&#34;: @(TAB_BAR_ITEM_MARGIN)} mutableCopy];

for (int i = 0; i &lt; ; i++)
{
    TabBarItem* item = ;

    if (i &gt; 0)
    {
      TabBarItem* lastAddedItem = ;
      NSDictionary *viewsDictionary = NSDictionaryOfVariableBindings(item, lastAddedItem);
      NSArray *constraints = -(==margin)-&#34; options:0 metrics:metrics views:viewsDictionary];
      ;
    }
    else
    {
      NSDictionary *viewsDictionary = NSDictionaryOfVariableBindings(item);
      NSArray *constraints = -(==margin)-|&#34; options:0 metrics:metrics views:viewsDictionary];
      ;
    }

    NSDictionary *viewsDictionary = NSDictionaryOfVariableBindings(item);
    NSArray *constraints = &#34; options:0 metrics:metrics views:viewsDictionary];
    ;
}
</code></pre>

<p><code>self.view</code> 是 <code>TabBarItem</code>s 的 <code>superview</code>。</p>

<p>现在我希望能够使用 AutoLayout 将所有 <code>TabBarItem</code> 移动到完全不同的位置(可能需要不同的约束)。</p>

<p>我应该如何处理这个问题?我可以识别一个约束并将其删除以添加另一个约束吗?</p>

<p>如前所述,我是 AutoLayout 的新手,真的很想以正确的方式做到这一点:-)</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我通过两个 <code>NSMutableArray</code> 实现了这一点:一个用于第一个位置所需的所有约束,一个用于另一个位置所需的所有约束。通过这样做,我能够从第一个列表中删除事件约束,然后从第二个列表中添加新约束。</p>

<p>不是很优雅,但我找不到其他方法。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 使用自动布局查看两个位置,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/24508910/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/24508910/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 使用自动布局查看两个位置