2015-10-26 183 views
0

我正在尝试为我的应用程序在xcode中使用情节提要板构建用户界面。iOS:不同尺寸的尺寸类别不变

我最近改变了外观,并希望iPad和iPhone有些不同。例如,我希望单元格高度在ipad上是另一个高度,在iPhone上是另一个高度,每个不同的大小都会对单元格内的标签所在的位置产生不利影响。

令人讨厌的是我得到了所有关于xib ,但使用故事板,我会建立everyhting我如何在紧凑的宽度普通高度为iPhone,然后去建立普通的宽度常规高度的iPad的用户界面。然后回去检查iphone的东西,它已经完全采用了我在普通常规尺寸课上所做的。

这真令人气愤,它在尺寸级别上毫无意义,我可以使用任何尺寸的课程,但我不想。下面的图像为您提供了一个很好的视觉表现。

所以在这里我做了UI的iPhone

so here I have made the UI for iphone

那么这里之前是iPad后,我做变更 enter image description here

enter image description here

然后后脑勺经常定期(iphone),你可以看到细胞的大小已经改变 enter image description here

如果我要将它改回原来的样子,那么去ipad我会看看上面包含的第一个ipad映像。所以很烦人,我怎么才能让它适应不同大小的类?

回答

1

您不能使用大小类来改变tableviewcell的高度。没有一个tableviewcell的属性可以通过大小类修改。

当您选择一个标签或其他可以被大小类别修改的其他东西时,您会在属性检查器的底部看到一个“已安装”复选框。您可以在不同大小的类中安装或卸载标签。

但是,当你选择tableviewcell或tableviewcell的子视图,你不会看到这个复选框。它没有意义的tableviewcell出现在一个大小类,但消失在另一个。

您必须使用tableView的委托方法来更改tableView的高度。

+0

啊好吧我从来不知道这一点,还有什么不受像表视图大小类的影响?谢谢你的回答我会标记你 –

+0

@DomBryan Apple没有指出哪些类不受大小类别的影响。相反,Apple记录了UIViews,Constraints,Fonts可以通过大小类别进行更改。你可以看到更多:尺寸类设计帮助https://developer.apple.com/library/prerelease/tvos/recipes/xcode_help-IB_adaptive_sizes/chapters/AboutAdaptiveSizeDesign.html#//apple_ref/doc/uid/TP40014436-CH6- SW1 – wj2061

+1

您不能使用大小类来更改UITableViewCell的高度,这并不完全正确。如果您使用autolayout和'rowHeight = UITableViewAutomaticDimension'并使视图粘贴到单元格内的单元格边距,则行的高度将根据单元格内的视图进行调整。你可以使用大小类来调整视图。因此,基于大小类的行高度。希望这可以帮助。 –