标签: size-classes

不同设备的单一尺寸类别中的iOS不同字体大小

在iOS 8中,我们可以为每个尺寸类设计不同的UI布局.我面临的问题是,我设计了一个紧凑宽度和常规高度的布局(纵向所有iPhone的尺寸等级),但我想保持3.5和4英寸设备的标签字体较小(iPhone 4和5 ),然后相对较大的4.7英寸(iPhone 6)和更大的5.5英寸(iPhone 6 Plus)设备.我已搜索但无法找到解决方案为同一大小类中的不同设备设置不同的字体大小.

font-size ios autolayout size-classes

17
推荐指数
3
解决办法
1万
查看次数

在IBInspectable属性中使用Size Classes

有没有办法让我们的IBInspectable属性在Interface Builder中具有大小类?(与Font相似)

在此输入图像描述

单击"+"符号可以为不同大小的类选择不同的字体(大小和其他属性).

我问,因为我创建了一个自定义视图,其中包含一个width属性,我希望在某些大小的类上使该宽度不同.

ios xcode6 size-classes

17
推荐指数
1
解决办法
1359
查看次数

在Xcode 6 beta中使用大小类

在Xcode 6(Beta 1)中从Swift开始构建一个新项目,并参见Storyboard的File Inspector.有Use Size Classes以下Use Auto Layout.这是截图.

在此输入图像描述

1)什么是Use Size Classes

2)它与iPhone 6的屏幕尺寸有关吗?

objective-c swift xcode6 ios8 size-classes

15
推荐指数
1
解决办法
1万
查看次数

屏幕外UITableViewCells(用于大小计算)不尊重大小类?

我在UITableView中使用自动布局和大小类,单元格根据其内容自行调整大小.为此,我使用的方法对于每种类型的单元格,您保留该单元格的屏幕外实例并使用systemLayoutSizeFittingSize它来确定正确的行高 - 此方法在此StackOverflow帖子其他地方进行了很好的解释.

这很有效,直到我开始使用大小类.具体来说,我在常规宽度布局中为文本的边距约束定义了不同的常量,因此iPad上的文本周围有更多的空白.这给了我以下结果.

之前和之后

似乎新的约束集合得到了尊重(存在更多的空白),但行高度计算仍然返回与不应用特定于大小类的约束的单元格相同的值.屏幕外单元格中的部分布局过程不考虑窗口的大小等级.

现在我想,这可能是因为离屏幕视图没有上海华盈或窗口,因此它不具有任何尺寸类性状是指在点systemLayoutSizeFittingSize调用时(即使它似乎使用的调整限制边距).我现在通过在创建UIWindow后添加屏幕外的大小调整单元作为子视图来解决这个问题,从而得到所需的结果:

固定

这是我在代码中所做的事情:

func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
    let contentItem = content[indexPath.item]

    if let contentType = contentItem["type"] {
        // Get or create the cached layout cell for this cell type.
        if layoutCellCache.indexForKey(contentType) == nil {
            if let cellIdentifier = CellIdentifiers[contentType] {
                if var cachedLayoutCell = dequeueReusableCellWithIdentifier(cellIdentifier) as? UITableViewCell {                        
                    UIApplication.sharedApplication().keyWindow?.addSubview(cachedLayoutCell)
                    cachedLayoutCell.hidden = true
                    layoutCellCache[contentType] = cachedLayoutCell
                }
            }
        }

        if …
Run Code Online (Sandbox Code Playgroud)

uikit ios autolayout size-classes

15
推荐指数
2
解决办法
3545
查看次数

以编程方式使用大小类

我(希望)看了所有相关的WWDC2014会话视频并阅读了文档,所以这个问题主要是为了证实我的怀疑,但请教育我.

我想要做的是使用自动布局动画视图.这本身不是问题.但这些动画的端点随着不同的方向而变化.我认为我可以使用大小类在轮换时自动移动视图,但Apple的开发人员指南说动画必须以编程方式完成,而且从我可以收集的内容来看,大小类只是一个Interface-Builder的东西.

我的另一个想法是使用自定义布局指南,如IB提供的顶部/底部,但这些似乎是硬编码的.

我能做的最后一件事是在听完旋转事件后手动更新约束,但这并不是什么新鲜事,我觉得大小类应该不仅仅用于静态接口.我是否过高估计了他们的目的?

TLDR:给定两个点A和B,视图可以起源于(由于动画),如何使用大小类或类似的东西移动两个点?

interface-builder ios autolayout ios8 size-classes

14
推荐指数
1
解决办法
8064
查看次数

iOS viewWillTransitionToSize和设备方向

我正在使用viewWillTransitionToSize来检测设备何时旋转到横向.根据目标大小,我可以检测是否前往景观并根据需要调整我的特征......

override func viewWillTransitionToSize(size: CGSize, withTransitionCoordinator coordinator: UIViewControllerTransitionCoordinator) {

    if size.width > size.height {
        self.setOverrideTraitCollection(UITraitCollection(horizontalSizeClass: UIUserInterfaceSizeClass.Regular), forChildViewController: viewController)
    }
    else{
        self.setOverrideTraitCollection(nil, forChildViewController: viewController)
    }

    super.viewWillTransitionToSize(size, withTransitionCoordinator: coordinator)
}
Run Code Online (Sandbox Code Playgroud)

但是,我希望能够检测我的设备是转换到横向左侧还是横向右侧.这将允许我根据设备的具体方向创建不同的行为或视图.(左还是右).

这可能不使用任何已弃用的函数吗?

我想过使用状态栏方向......

    let orientation = UIApplication.sharedApplication().statusBarOrientation;
    if( orientation == UIInterfaceOrientation.LandscapeLeft )
    {
        // Do something
    }
    else if( orientation == UIInterfaceOrientation.LandscapeRight )
    {
        // Do something else
    }
Run Code Online (Sandbox Code Playgroud)

...但这没有用,因为这似乎给出了"旧的"状态方向.

如何获得特定的目标定位?

iphone orientation screen-orientation ios size-classes

13
推荐指数
2
解决办法
5193
查看次数

iPad Pro尺寸等级

在Xcode 7.1 beta 1中,只有通用compactregular大小类可用于Interface Builder和代码中.

iPad Pro会有新的尺寸等级吗?了解哪些大小类应用程序将在各种分屏设置中使用也很有趣.

xcode interface-builder ipad size-classes ios9.1

13
推荐指数
1
解决办法
4275
查看次数

如何重置大小类自动布局回到其wAny hAny默认值?

我正在研究xcode项目的特定大小类布局,我遇到了麻烦.

我的约束非常混乱,我想重新启动视图.

在接口构建器中是否有一种方法可以将大小类(例如wAny hCompact)重置为其任何约束设置?(即回到wAny hAny的样子)

xcode constraints interface-builder autolayout size-classes

12
推荐指数
1
解决办法
2933
查看次数

根据大小类更改约束的乘数

是否可以根据当前大小类给出约束不同的乘数?

我认为,对于常规尺寸类宽度,我希望屏幕尺寸的一半,我希望它的尺寸​​为屏幕尺寸的80%,以获得紧凑的尺寸类宽度.在故事板中,我可以选择将不同大小类的不同变量添加到约束常量值,但不是它的乘数值.如果相关,它是等宽宽度约束.

我没有做太多以编程方式添加约束,所以我希望它们可能是一条解决方案.任何人都可以告诉我是否有可能通过故事板或编程方式执行我正在寻找的内容?

uikit ios autolayout size-classes

11
推荐指数
1
解决办法
1842
查看次数

更改iphone的基本值布局会影响ipad布局

我有一个尺寸类宽度任意的高度,任何当前适用于iPad景观的高度.我有一个任务是为iPhone肖像设计相同的布局.

当我开始设计紧凑宽度的尺寸类,常规高度我的基本布局(任何,任何)也会改变.

我正在使用故事板进行设计.

注意:请注意 - 上传预览显示正确,但在模拟器上运行时会更改.

ios size-classes ios-autolayout xcode7.3 ios9.3

11
推荐指数
1
解决办法
136
查看次数