Xcode中自动布局的新大小类很棒,但是还可以使用大小类更改除字体大小等约束之外的其他内容吗?
我在最近工作的iPad应用程序上遇到了Popover的问题...只是在这里发布它,因为我觉得它可以帮助其他人.
我正在使用Xcode 6和iOS 8以及Size Classes,而Popover View是在Storyboard中构建的.
因为我的iPad应用程序一直是常规/常规尺寸类,所以我也在R/R中构建了Popover视图.
不过我用Constraints做了什么,popover从来没有看起来正确,它是一团糟.那有什么不对?
我研究过拆分视图的例子(就像这个一样)并且效果很好.我只需要改变一下行为.我希望当用户拥有iPad纵向时,可以看到主控制器和细节控制器.它应该像FB Messenger或Skype一样工作.两个控制器并排,无法隐藏主控制器.怎么可能这样做?感谢帮助
奖金问题:是否有可能以某种方式设置iPad肖像的行为与iPhone肖像相同?如果我改变主意,我希望全屏显示细节,点击左侧导航栏按钮后,我会在全屏显示主视图,而不显示细节.我是可能的还是拆分视图决定了这一点并且我能做些什么呢?
我有一个UIImage.当这UIImage出现在iPhone上时,我希望它的高度为UIImage屏幕高度的0.5.当这UIImage出现在iPad上时,我希望它UIImage的高度为屏幕高度的0.3.
我已经使用Interface Builder尺寸类别设置不同的尝试Multiplier为Compact|Regular和Regular|Regular,但是当我改变Multiplier的值,它在所有大小级的变化.
有没有办法Multiplier为不同的大小类设置不同的值?
Apple 推出了三款新的 iPhone X 机型:iPhone XR、XS 和 XS Max。它们的尺寸等级是什么,它们与其他 iPhone 型号相比如何?
我需要在横向和纵向上为 iPad 制作不同的布局,但 iPad 上的尺寸类别始终是常规/常规。Apple 推荐的调整界面的方法是使用具有尺寸类别的自适应布局,但在 iPad 上,纵向和横向模式没有区别。
有没有办法在iPad上呈现不同的纵向和横向布局而不检测设备方向?
例如,在 iPhone(紧凑/常规)上将显示为:
因此,我们的目标是在 iPad 处于纵向模式时显示 iPhone 布局。
谢谢!
我的故事板只支持w:常规h:紧凑.
因为我需要支持横向的所有设备.
但我认为它不支持iPad.
当我运行iPad时,它只是一个空白页面.
我试图将它转换为any:any但它隐藏了所有子视图.反正有没有把这个类大小转换为any:any支持所有这些工作没有冒险重做的风险?或者至少我需要一种方法来制作它只适用于iPad?
我发现一些帖子描述了何时使用Auto布局和何时使用Size类之间的区别.
但我仍然无法理解这两者之间的区别.
如果任何人可以暗示差异或分享一个良好的链接.
提前致谢!
我必须在通用应用程序中显示一个imageview,它的大小应该随着每个设备中的屏幕设计而增加,而不会降低图像质量.给予imageview的图像是静态图像.如果我使用大小类使用静态宽度和高度约束它将起作用.但我不认为这是正确的方法.如果我使用宽度和高度与超视图成比例,它会增加图像高度,但图像清晰度会降低.任何建议都会有所帮助.
当水平尺寸等级改变时,我在调整单元格的布局时遇到问题。
我的单元格有一个 stackView,我希望轴对于 Compact size 类是 Horizontal,对于Regular 是 Vertical。
这是我尝试过的:
override func traitCollectionDidChange(previousTraitCollection: UITraitCollection?) {
if previousTraitCollection?.horizontalSizeClass != traitCollection.horizontalSizeClass {
self.collectionView?.reloadData()
}
}
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! MyCollectionViewCell
switch traitCollection.horizontalSizeClass {
case .Compact:
cell.stackView.axis = .Horizontal
default:
cell.stackView.axis = .Vertical
}
return cell
}
Run Code Online (Sandbox Code Playgroud)
但结果是并非所有单元格都会更新其布局,请参见下面的 gif。
编辑:
我已经确认通过cellForItem在单元格类本身中和中打印来正确更改轴。所以问题似乎是单元格没有重绘..
任何建议我应该如何解决这个问题?
我正在尝试为iPad和iPhone(4英寸)设置不同的限制。
我为iPhone设置了“常规高度”和“紧凑宽度”约束。但是这些限制显示在7.9英寸iPad,9.7英寸iPad上。
这些约束用于模式视图。
我如何使“常规高度”和“紧凑宽度”约束仅限于iPhone。
iphone ipad modalviewcontroller size-classes adaptive-layout
size-classes ×11
ios ×8
autolayout ×4
ipad ×4
storyboard ×2
ios8 ×1
iphone ×1
landscape ×1
objective-c ×1
popover ×1
portrait ×1
swiftui ×1
uiimageview ×1
xcode ×1
xcode6 ×1