Tag: 大小

SpriteKit如何获得正确的屏幕尺寸

我试过了 self.frame.size self.view!.frame.size UIScreen.mainScreen().bounds.size 他们都没有工作。 如何获得设备的正确屏幕尺寸?

iOS – 如何find与给定的CGRect相同的高度正确的字体大小(以点为单位)?

标题几乎可以解释它。 我有一个图像,我正在绘制文本。 我希望文本的大小根据图像的大小,并希望find一种方法来获得一个字体的高度只是比图像本身短一点。

以编程方式从XIB调整自定义UIView的大小

我有以下问题:我在XIB文件中创build了一个自定义的UIView类和它的布局。 假设我在XIB中的自定义视图的大小是150 x 50。我已经启用了sizeClasses (wAny hAny)和AutoLayout 。 在模拟度量标准中,我设置了Size = Freeform , Status Bar = None , other = Inferred 。 我的自定义UIView类的代码如下所示: #import "CustomView.h" @implementation CustomView #pragma mark – Object lifecycle – (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { [self setup]; } return self; } – (id)initWithCoder:(NSCoder *)aDecoder { self = [super initWithCoder:aDecoder]; if […]

如何使用Swift从资源加载特定的图像

我是Swift的新手,我想从资源中加载一个特殊的图像。 例如,我有: image 1 for iphone 4s = green-square@2x.png image 2 for iphone 5/5s = green-square-Retina@2x.png image 3 for iphone 6s = green-square@3x.png 我想为iphone 6加载一个特定的图像 self.GSquare = SKSpriteNode(imageNamed: "./Images.xcassets/green-square-Retina@2x.png") 可能吗?

如何获得iOS的触摸大小?

我明白, 这个回应清楚地表明,这是不可能的,没有私人函数调用。 因此,根据苹果的条款,这种方法不能用于App Store应用程序。 但是,一些应用程序似乎已经使用这个函数调用: 倒数第二的实际手掌拒绝没有预先定义的拒绝区域,像在笔记本高清 Virtuoso的压力敏感度,他们称之为“TrueVelocity 2” GarageBand也用于压力敏感度 显然,尽pipe苹果受到限制,但这种方法已经在App Store应用程序中广泛使用。 tl; dr什么是iOS上的私人函数调用来获取触摸大小?

在Spritekit游戏中限制GUI元素的比例

因为邮件太多,我提前道歉,但是每个试图制作某种通用应用程序的人都知道这是非常有问题的东西,所以请对我轻松一点。 目标 我试图实现的(如上图所示)是在iPhone 5和iPhone 6上使用@ 2x资源,并保持应用程序的外观。 如果可能的话,要做到这一点,而不是手动计算基于检测到的设备的节点的比例和位置属性…所以总之,如何实现该应用程序自动约束元素(和场景)的比例? 另外,我希望在iPhone 6+上使用@ 3x资源来看应用程序,但由于简单,我只集中在iPhone 5和6上。 我在网上发现的是有些人说这个(下采样)是由iOS自动完成的,例如他们提出这样的build议: “为iPhone 6制作@ 2x资产的尺寸,然后iOS会自动为iPhone 5降尺度”。 但是在Spritekit场景中显然不是这样,或者我错过了一些东西。 问题 即使iPhone 6和iPhone 5具有相同的宽高比和相同的PPI,但使用相同的素材与场景大小(与第一张和第二张图片相比,与场景大小相比,看起来菜单精灵)看起来不会相同,因为PPI与像素密度和iPhone 6有更多的空间(更大的对angular线,更多的英寸),这意味着它有更多的像素比iPhone 5。这是我的问题来自哪里,我不知道是一个有效的方式来处理它。 我到目前为止所做的 第二个图像对于GUI来说不是问题,但对于游戏来说,就我而言,这是因为我希望在不同的设备上具有相同的外观和感觉。 只要看第一和第三的形象。 感谢Skyler Lauren的build议,我已经设法在所有的iPhone 5设备上,在7.1或8.1系统以及iPhone 6上都有相同的应用程序外观。所以现在,问题是如何使这个代码适应iPhone 6 +使用@ 3x纹理,以及iPhone 4s。 这是iPhone 5和iPhone 6的解决scheme: 查看controller.m GameScene *scene = [GameScene sceneWithSize:CGSizeMake(375,677)];//fixed instead of view.bounds.size scene.scaleMode = SKSceneScaleModeAspectFill; 所以在iPhone 6的尺寸上,场景总是有固定的大小,而且视图大小是根据设备而变化的。 我正在使用资产目录启动图像,而不是xib文件。 图片大小build议大小为640x960px 4s,640x1136px 5,750x1334px […]

如何支持截至2014年的各种iPhone屏幕尺寸?

我几乎完成了我的第一个iPhone应用程序,并试图添加一个背景图像,我觉得有点混乱,因为如今有不同的iPhone版本中的3或4个不同大小的屏幕,以不同的分辨率启动。 所以当我意识到整个事情的时候,我还是不知道自己真正需要什么。 如果我希望我的应用能够在iPhone 4 / 4s,5s / 5c,6/6 +上运行,我需要多less个不同版本的背景图像,以及尺寸和分辨率是多less? 我已经search了一下,到2014年还没有发现任何有凝聚力的答案。 另外,如果iPhone 6是1334×750 @ 3x,这是否意味着我应该包括4002×2250背景? 然后为1920×1080 iPhone 6 + @ 3x,一个5760 x 3240图像? 这是巨大的! 我觉得我必须正确地理解这一点。

根据内容调整textField的大小

在使用Swift编写的iOS应用程序中使用自动布局时,如何根据内容调整textField的大小? 在视图加载和用户input时,文本字段将根据需要调整其大小以适应其内容。 理想情况下,文本字段将停止resize,例如6行,并成为可滚动的。

UICollectionView单元格子视图不resize

在一个CollectionView中,一些单元格应该有一个附加的子视图或图层。 可以告诉CollectionView调整其单元格大小,因此所有内容都需要适当resize。 目前,这个单元格是从一个包含一个单元格的图像视图初始化的; 单元格笔尖链接到一个自定义的UICollectionViewCell子类,只有init。 Autoresize子视图被选中。 CollectionView被告知通过“sizeForItemAtIndexPath:”派生的值来返回单元格的大小。 我已经子类化FlowLayout,但它只指定ScrollDirection和Insets。 所有这一切工作正常。 问题:如何将子视图/图层添加到单元格,以便它也正确resize? 我尝试添加translatesAutoresizingMaskIntoConstraintsclosures子视图和图层,但这些不会自动更改大小。 也试图使用代码框架/视图,而不是笔尖。 我现在得到的最好的是cellForItemAtIndexPath中添加的cell.contentView.layer子图层: 这是通过从sizeForItemAtIndexPath:中存储单元格的frame.size来“手动”resize,这不仅是丑陋的,而且还以不同的单元格具有各种大小的子层结束。 任何帮助感激!