Unity3D如何在给定4个维度的情况下以编程方式调整图像的大小,距离屏幕左上角和右下角的距离

Posted

技术标签:

【中文标题】Unity3D如何在给定4个维度的情况下以编程方式调整图像的大小,距离屏幕左上角和右下角的距离【英文标题】:Unity3D How to programatically resize an image given 4 dimensions the distance from top bottom left and right of screen 【发布时间】:2017-04-12 20:41:19 【问题描述】:

我想使用 JSON 中的值调整图像大小。 JSON 具有距屏幕顶部、底部、左侧和右侧的距离(以像素为单位)的值。

我希望我的图像可以拉伸或缩小以适应 JSON 中的值。我试过了:

myImage.preserveAspect = false;
//parent game object of image
ImageGO.getComponent<rectTransform>().sizeDelta = new vector2 (y2, x2);    
myImage.rectTransform.sizeDelta = new Vector2 (y2, x2);

但图像没有调整大小(宽度和高度也没有给出参数)。我使用 unity 5.5 和 C#。

【问题讨论】:

1。您将代码发布在您的问题中,而不是评论部分。编辑您的问题并将其发布在那里。 2。接受答案并没有错。我的意思是,回到你的其他问题并接受那些解决了你问题的问题。 您在上次编辑后弄乱了问题,请重新编辑问题以再次阅读。 【参考方案1】:

也许您必须更改 rectTransform 中图像的anchored position 才能得到拉伸,我的机器上现在没有 Unity,但我相信如果您正确调整锚定位置,它应该会有所帮助,然后是图像应该使用sizeDelta调整大小。

【讨论】:

我将图像附加到的游戏对象的锚定位置设置为拉伸。我将发布我的一些代码。 我需要更多详细信息才能为您提供帮助、检查员设置照片、所有代码依赖项以及任何其他重要详细信息。并重新使 questuin 可读;)【参考方案2】:

我让它工作了我拥有的大部分代码都是无用的。我需要创建公共vector2(s)用JSON中的值初始化它们对它们执行一些数学运算并将它们初始化为 .anchoredPosition .sizeDelta

【讨论】:

以上是关于Unity3D如何在给定4个维度的情况下以编程方式调整图像的大小,距离屏幕左上角和右下角的距离的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有 XML 的情况下以编程方式将片段添加到活动

如何在没有任何按钮的情况下以编程方式关闭 UIAlertController?

如何在不使用 UINavigationController 的情况下以编程方式进入 rootViewController

如何在有/没有转换的情况下以编程方式在绘图中使用 .ico 图像

如何在没有故事板的情况下以编程方式将单元格添加到 CollectionView

如何在没有 XIB 文件的情况下以编程方式更新 Xcode 中的 UILabel?